

# Padrão Federal de Processamento de Informações (FIPS-140) do AWS Fargate
<a name="ecs-fips-compliance"></a>

O Federal Information Processing Standard (FIPS-140) é um padrão do governo dos EUA e do Canadá que especifica os requisitos de segurança para módulos criptográficos que protegem informações confidenciais. O FIPS-140 define um conjunto de funções criptográficas validadas que podem ser usadas para criptografar dados em trânsito e dados em repouso. 

Ao ativar a conformidade com o FIPS-140, é possível executar workloads no Fargate de forma compatível com o FIPS-140. Para obter mais informações sobre a conformidade com o FIPS-140, consulte [Padrão Federal de Processamento de Informações (FIPS) 140-3](https://aws.amazon.com/compliance/fips/).

## Considerações sobre o FIPS-140 do AWS Fargate
<a name="fips-considerations"></a>

Considere o seguinte ao usar a conformidade com FIPS-140 no Fargate:
+ A conformidade com o FIPS-140 está disponível somente nas regiões AWS GovCloud (US).
+ O Fargate oferece suporte ao FIPS-140 versão 140.3
+ A conformidade com FIPS-140 está desativada por padrão. Você deve ativá-la.
+ O Amazon CloudWatch não oferece suporte a um endpoint FIPS de pilha dupla que possa ser usado para monitorar as tarefas do Amazon ECS em configurações somente IPv6 que usam conformidade com FIPS-140.
+ Suas tarefas devem usar a configuração a seguir para conformidade com o FIPS-140:
  + O `operatingSystemFamily` deve ser `LINUX`.
  + O `cpuArchitecture` deve ser `X86_64`. 
  + A versão da plataforma Fargate deve ser `1.4.0` ou posterior.

## Use FIPS no Fargate
<a name="use-fips"></a>

Use o procedimento a seguir para usar a conformidade com FIPS-140 no Fargate.

1. Ative a conformidade com o FIPS-140. Para obter mais informações, consulte [Conformidade do AWS Fargate com o Padrão Federal de Processamento de Informações (FIPS-140)](ecs-account-settings.md#fips-setting).

1. Opcionalmente, é possível usar o ECS Exec para executar o comando a seguir para verificar o status de conformidade com o FIPS-140 de um cluster.

   Substitua {{cluster-name}} pelo nome do cluster, {{task-id}} pelo ID ou o ARN da tarefa e {{container-name}} pelo nome do contêiner da tarefa para a qual você deseja executar o comando.

   Um valor de retorno de “1" indica que você está usando FIPS.

   ```
   aws ecs execute-command \
       --cluster {{cluster-name}} \
       --task {{task-id}} \
       --container {{container-name}} \
       --interactive \
       --command "cat /proc/sys/crypto/fips_enabled"
   ```

## Uso do CloudTrail para auditoria do FIPS-140 do Fargate
<a name="fips-cloud-trail"></a>

O CloudTrail é ativado na conta da AWS quando ela é criada. Quando ocorre uma atividade de API e console no Amazon ECS, esta atividade é registrada em um evento do CloudTrail junto com outros eventos de serviço da AWS no **Histórico de eventos**. É possível visualizar, pesquisar e baixar eventos recentes em sua conta da AWS. Para obter mais informações, consulte [Visualização de eventos com o histórico de eventos do CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html). 

Para obter um registro contínuo de eventos na sua conta da AWS, incluindo eventos do Amazon ECS, crie uma trilha que o CloudTrail use para entregar arquivos de log para um bucket do Amazon S3. Por padrão, ao criar uma trilha no console, ela é aplicada a todas as regiões da . A trilha registra logs de eventos de todas as Regiões na AWS divisória e entrega os arquivos do log para o bucket Amazon S3 especificado. Além disso, é possível configurar outros AWS serviços para melhor analisar e agir de acordo com dados coletados do evento nos logs CloudTrail. Para obter mais informações, consulte [Registro em log das chamadas de API do Amazon ECS usando o AWS CloudTrail](logging-using-cloudtrail.md).

O exemplo a seguir mostra uma entrada de log do CloudTrail que demonstra a ação de API `PutAccountSettingDefault`:

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "IAMUser",
        "principalId": "AIDAIV5AJI5LXF5EXAMPLE",
         "arn": "arn:aws:iam::123456789012:user/jdoe",
        "accountId": "123456789012",
        "accessKeyId": "AKIAIPWIOFC3EXAMPLE",
    },
    "eventTime": "2023-03-01T21:45:18Z",
    "eventSource": "ecs.amazonaws.com",
    "eventName": "PutAccountSettingDefault",
    "awsRegion": "us-gov-east-1",
    "sourceIPAddress": "52.94.133.131",
    "userAgent": "aws-cli/2.9.8 Python/3.9.11 Windows/10 exe/AMD64 prompt/off command/ecs.put-account-setting",
    "requestParameters": {
        "name": "fargateFIPSMode",
        "value": "enabled"
    },
    "responseElements": {
        "setting": {
            "name": "fargateFIPSMode",
            "value": "enabled",
            "principalArn": "arn:aws:iam::123456789012:user/jdoe"
        }
    },
    "requestID": "acdc731e-e506-447c-965d-f5f75EXAMPLE",
    "eventID": "6afced68-75cd-4d44-8076-0beEXAMPLE",
    "readOnly": false,
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "eventCategory": "Management",
    "tlsDetails": {
        "tlsVersion": "TLSv1.2",
        "cipherSuite": "ECDHE-RSA-AES128-GCM-SHA256",
        "clientProvidedHostHeader": "ecs-fips.us-gov-east-1.amazonaws.com"
    }
}
```