

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.

# función de paso aws-s3
<a name="aws-s3-step-function"></a>

![](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/experimental.png)


 Todas las clases están en desarrollo activo y están sujetas a cambios o eliminación no compatibles con versiones anteriores en cualquier versión futura. Estos no están sujetos a la[Versiones semánticas](https://semver.org/)El modelo. Esto significa que, aunque puede usarlos, es posible que necesite actualizar el código fuente cuando actualice a una versión más reciente de este paquete. 

**Nota:** Para garantizar una funcionalidad adecuada, los paquetes de AWS Solutions Constructs y los paquetes CDK de AWS del proyecto deben tener la misma versión. 


|  **Idioma**  |  **Paquete**  | 
| --- | --- | 
|  ![](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/python.png) Python  |  aws\_solutions\_constructs.aws\_s3\_step\_function  | 
|  ![](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/typescript.png) TypeScript  |  @aws-solutions-constructs/aws-s3-step-function  | 
|  ![](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/java.png) Java  |  software.amazon.awsconstructs.services.s3stepfunction  | 

## Overview
<a name="overview-22"></a>

 Este constructo de soluciones de AWS implementa un depósito de Amazon S3 conectado a una función de pasos de AWS.

**nota**  
Esta construcción utiliza Amazon EventBridge (Amazon CloudWatch Events) para activar AWS Step Functions. EventBridge es más flexible, pero activar Step Functions con notificaciones de eventos de S3 tiene menos latencia y es más rentable. Si el costo y/o la latencia son un problema, debe considerar implementar`aws-s3-lambda`y`aws-lambda-stepfunctions`en lugar de este constructo.

 Aquí hay una definición mínima de patrón implementable en TypeScript: 

```
import { S3ToStepFunction, S3ToStepFunctionProps } from '@aws-solutions-constructs/aws-s3-step-function';
import * as stepfunctions from '@aws-cdk/aws-stepfunctions';

const startState = new stepfunctions.Pass(this, 'StartState');

new S3ToStepFunction(this, 'test-s3-step-function-stack', {
    stateMachineProps: {
      definition: startState
    }
});
```

## Initializer
<a name="initializer-22"></a>

```
new S3ToStepFunction(scope: Construct, id: string, props: S3ToStepFunctionProps);
```

 *Parámetros* 
+  scope[https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_core.Construct.html) 
+  id`string` 
+  props[`S3ToStepFunctionProps`](#pattern-construct-props-22) 

## Patrón de construcción
<a name="pattern-construct-props-22"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿ExistenteBuckeTobj?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.IBucket.html)  |  Instancia existente del objeto S3 Bucket. Si se proporciona esto, entonces también proporcionabucketPropses un error.  | 
|  ¿BucketProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.BucketProps.html)  |  Propiedades opcionales proporcionadas por el usuario para anular las propiedades predeterminadas del depósito. Se pasa por alto si unexistingBucketObjse encuentra.  | 
|  StateMachineProps  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachineProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachineProps.html)  |  El usuario ha proporcionado accesorios opcionales para anular los accesorios predeterminados para SFN.StateMachine.  | 
|  ¿EventRuleProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-events.RuleProps.html)  |  El usuario opcional proporcionó EventRuleProps para anular los valores predeterminados.  | 
|  Implementar CloudTrail?  |  boolean  |  Si desea implementar un Trail en AWS CloudTrail para registrar eventos de API en Amazon S3. El valor predeterminado es true.  | 
|  CreateCloudWatchalarms  |  boolean  |  Si desea crear alarmas recomendadas de CloudWatch.  | 
|  LogGroupProps?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroupProps.html)  |  Concede opcionales proporcionados por el usuario para anular los accesorios predeterminados para el grupo de registros de CloudWatch Logs.  | 

## Propiedades de patrón
<a name="pattern-properties-22"></a>


|  **Nombre**  |  **Tipo**  |  **Descripción**  | 
| --- | --- | --- | 
|  ¿Trail de nubes?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudtrail.Trail.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudtrail.Trail.html)  |  Devuelve una instancia de la pista de Cloudtrail creada por el patrón.  | 
|  ¿CloudTrailBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket creado por el patrón para almacenar datos de rastreo de Cloudtrail.  | 
|  CloudTrailLogingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el depósito principal utilizado por la pista de Cloudtrail.  | 
|  ¿CloudWatchalarms?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-cloudwatch.Alarm.html)  |  Devuelve una lista de una o más alarmas de CloudWatch creadas por el patrón.  | 
|  ¿S3 Bucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del bucket S3 creado por el patrón.  | 
|  ¿S3LoggingBucket?  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-s3.Bucket.html)  |  Devuelve una instancia del depósito de registro creado por el patrón para el bucket S3.  | 
|  StateMachine  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachine.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-stepfunctions.StateMachine.html)  |  Devuelve una instancia de la máquina de estado creada por el patrón.  | 
|  StateMachineLogGroup  |  [https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-logs.LogGroup.html)  |  Devuelve una instancia del grupo de registros creado por el patrón para la máquina de estado.  | 

## Configuración predeterminada
<a name="default-settings-22"></a>

 La implementación lista para usar de este patrón sin anulación establecerá los siguientes valores predeterminados:

### Bucket de Amazon S3
<a name="amazon-s3-bucket-6"></a>
+  Configurar el registro de acceso para S3 Bucket. 
+  Habilite el cifrado del lado del servidor para S3 Bucket mediante la clave KMS administrada por AWS. 
+  Active el control de versiones para S3 Bucket. 
+  No permita el acceso público para S3 Bucket. 
+  Mantenga el Bucket S3 cuando elimine la pila CloudFormation. 
+  Aplicación del cifrado de los datos en tránsito. 
+  Aplica una regla de ciclo de vida para mover versiones de objetos no actuales al almacenamiento de Glacier después de 90 días.

### AWS CloudTrail
<a name="aws-cloudtrail"></a>
+  Configure un Trail en AWS CloudTrail para registrar eventos de API en Amazon S3 relacionados con el Bucket creado por el Construct. 

### Reglas de Amazon CloudWatch Events
<a name="amazon-cloudwatch-events-rule-2"></a>
+  Conceda permisos de privilegios mínimos a CloudWatch Events para activar la función Lambda. 

### AWS Step Function
<a name="aws-step-function-1"></a>
+  Active el registro de CloudWatch para API Gateway. 
+  Implemente las prácticas recomendadas de CloudWatch Alarms para la función Step. 

## Architecture
<a name="architecture-22"></a>

![](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/aws-s3-step-function.png)


## GitHub
<a name="github-22"></a>


<table>
<thead>
  <tr><th colspan="2"> Para ver el código de este patrón, crear/ver problemas y solicitudes de extracción, y mucho más: </th></tr>
</thead>
<tbody>
  <tr><td> ![](http://docs.aws.amazon.com/es_es/solutions/latest/constructs/images/GitHub-Mark-32px.png) </td><td> [@aws -solutions-constructs/aws-s3-step-function](https://github.com/awslabs/aws-solutions-constructs/tree/master/source/patterns/%40aws-solutions-constructs/aws-s3-step-function) </td></tr>
</tbody>
</table>
