

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

# Acesso e segurança na personalização de modelos
<a name="custom-model-job-access-security"></a>

Esta página fornece informações abrangentes de segurança e permissões para todos os tipos de personalização do modelo Amazon Bedrock, incluindo ajuste fino, ajuste fino de reforço, destilação e operações de modelo. Antes de começar a personalizar um modelo, saiba de qual tipo de acesso o Amazon Bedrock precisa e considere algumas opções para proteger seus trabalhos e artefatos de personalização.

As seções a seguir contêm as permissões necessárias para diferentes cenários de personalização. Escolha as permissões apropriadas com base no seu caso de uso específico:

## Permissões básicas de personalização do modelo
<a name="custom-model-job-basic-permissions"></a>

Todos os trabalhos de personalização de modelos exigem essas permissões básicas. Eles se aplicam ao ajuste fino, à destilação e a outros tipos de personalização.

### Criar um perfil de serviço do IAM para a personalização de modelo
<a name="custom-model-job-service-role"></a>

O Amazon Bedrock precisa de uma função de serviço AWS Identity and Access Management (IAM) para acessar o bucket S3 em que você deseja armazenar seus dados de treinamento e validação de personalização de modelos. Há duas maneiras de fazer isso:
+ Criar o perfil de serviço automaticamente usando o Console de gerenciamento da AWS.
+ Criar um perfil de serviço manualmente com as permissões adequadas para acessar o bucket do S3.

Para a opção manual, crie uma função do IAM e anexe as seguintes permissões seguindo as etapas em [Criar uma função para delegar permissões a um AWS serviço](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html).
+ Relação de confiança
+ Permissões para acessar os dados de treinamento e de validação no S3 e gravar os dados de saída no S3
+ (Opcional) Se você criptografar qualquer um dos recursos a seguir com uma chave do KMS, permissões para descriptografar a chave (consulte [Criptografia de modelos personalizados](encryption-custom-job.md))
  + Um trabalho de personalização de modelo ou o modelo personalizado resultante.
  + Dados de treinamento, validação ou saída do trabalho de personalização do modelo

### Relação de confiança
<a name="custom-model-job-service-role-trust-relationship"></a>

A política a seguir permite que o Amazon Bedrock assuma esse perfil e realize o trabalho de personalização do modelo. Veja um exemplo de política que é possível usar.

Opcionalmente, é possível restringir o escopo da permissão da [prevenção do problema “representante confuso” entre serviços](cross-service-confused-deputy-prevention.md) usando uma ou mais chaves de contexto de condição global com o campo `Condition`. Para obter mais informações, consulte [Chaves de contexto de condição global da AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html).
+ Defina o valor `aws:SourceAccount` para o ID da conta.
+ (Opcional) Use a condição `ArnEquals` ou `ArnLike` para restringir o escopo a trabalhos específicos de personalização de modelo no ID de sua conta.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "bedrock.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{123456789012}}"
                },
                "ArnEquals": {
                    "aws:SourceArn": "arn:aws:bedrock:us-east-1:{{111122223333}}:model-customization-job/*"
                }
            }
        }
    ]
}
```

------

### Permissões para acessar arquivos de treinamento e de validação e gravar os arquivos de saída no S3
<a name="custom-model-job-service-role-s3-permissions"></a>

Anexe a política a seguir para permitir que o perfil acesse os dados de treinamento e de validação e o bucket no qual os dados de saída são gravados. Substitua os valores na lista `Resource` pelos nomes reais dos buckets.

Para restringir o acesso a uma pasta específica em um bucket, adicione uma chave de condição `s3:prefix` ao caminho da pasta. É possível seguir o exemplo de **Política de usuário** no [Exemplo 2: obter uma lista de objetos em um bucket com um prefixo específico](https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazon-s3-policy-keys.html#condition-key-bucket-ops-2) 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::{{training-bucket}}",
                "arn:aws:s3:::{{training-bucket/*}}",
                "arn:aws:s3:::{{validation-bucket}}",
                "arn:aws:s3:::{{validation-bucket/*}}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::{{output-bucket}}",
                "arn:aws:s3:::{{output-bucket/*}}"
            ]
        }
    ]
}
```

------

## Permissões de cópia do modelo
<a name="custom-model-job-model-copying-permissions"></a>

Para copiar um modelo para outra região, você precisa de permissões específicas, dependendo das permissões atuais da sua função e da configuração do modelo.

1. Se sua função não tiver a [AmazonBedrockFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonBedrockFullAccess)política anexada, anexe a seguinte política baseada em identidade à função para permitir o mínimo de permissões para copiar modelos e rastrear trabalhos de cópia.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "CopyModels",
               "Effect": "Allow",
               "Action": [
                   "bedrock:CreateModelCopyJob",
                   "bedrock:GetModelCopyJob",
                   "bedrock:ListModelCopyJobs"
               ],
               "Resource": [
                   "arn:aws:bedrock:{{us-east-1}}::foundation-model/{{model-id}}"
               ],
               "Condition": {
                   "StringEquals": {
                       "aws:RequestedRegion": [
                           "{{us-east-1}}"
                       ]
                   }
               }
           }
       ]
   }
   ```

------

1. (Opcional) Se o modelo a ser copiado estiver criptografado com uma chave do KMS, anexe uma [política de chave à chave do KMS que criptografou o modelo](encryption-custom-job.md#encryption-key-policy-decrypt) para permitir que uma função o descriptografe.

1. (Opcional) Se planejar criptografar a cópia do modelo com uma chave do KMS, anexe uma [política de chave à chave do KMS usada para criptografar o modelo](encryption-custom-job.md#encryption-key-policy-encrypt) para permitir que um perfil descriptografe o modelo com a chave.

## Permissões de perfil de inferência entre regiões
<a name="custom-models-cross-region-inference-profile-basic-permissions"></a>

Para usar um perfil de inferência entre regiões para um modelo de professor em um trabalho de destilação, a função de serviço deve ter permissões para invocar o perfil de inferência em um Região da AWS, além do modelo em cada região no perfil de inferência.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CrossRegionInference",
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:inference-profile/{{${InferenceProfileId}}}",
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/{{${ModelId}}}",
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/{{${ModelId}}}"
            ]
        }
    ]
}
```

------

## (Opcional) Permissões para criar um trabalho de destilação com um perfil de inferência entre regiões
<a name="custom-models-cross-region-inference-profile-permissions"></a>

Para usar um perfil de inferência entre regiões para um modelo de professor em um trabalho de destilação, a função de serviço deve ter permissões para invocar o perfil de inferência em um Região da AWS, além do modelo em cada região no perfil de inferência.

Para obter permissões a serem invocadas com um perfil de inferência entre regiões (definido pelo sistema), use a seguinte política como modelo para a política de permissões a ser anexada ao perfil de serviço:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CrossRegionInference",
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:inference-profile/{{${InferenceProfileId}}}",
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/{{${ModelId}}}",
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/{{${ModelId}}}"
            ]
        }
    ]
}
```

------

## (Opcional) Criptografar trabalhos e artefatos de personalização de modelos
<a name="custom-model-job-encryption"></a>

Criptografe dados de entrada e saída, trabalhos de personalização ou solicitações de inferência feitas a modelos personalizados. Para obter mais informações, consulte [Criptografia de modelos personalizados](encryption-custom-job.md).

## (Opcional) Proteger trabalhos de personalização de modelos usando uma VPC
<a name="vpc-model-customization"></a>

Quando você executa um trabalho de personalização de modelo, o trabalho acessa o bucket do Amazon S3 para baixar os dados de entrada e carregar as métricas do trabalho. Para controlar o acesso aos dados, é recomendável usar uma nuvem privada virtual (VPC) com a [Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html). É possível proteger ainda mais os dados configurando a VPC para que os dados não fiquem disponíveis pela internet e, em vez disso, criar um endpoint da VPC de interface com [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) para estabelecer uma conexão privada com os dados. Para obter mais informações sobre como o Amazon VPC e a AWS PrivateLink integração com o Amazon Bedrock, consulte. [Proteja os dados usando a Amazon VPC e o AWS PrivateLink](usingVPC.md)

Execute as etapas a seguir para configurar e usar uma VPC para os dados de treinamento, validação e saída de seus trabalhos de personalização de modelos.

**Topics**
+ [Configurar a VPC para proteger os dados durante a personalização do modelo](#vpc-cm-setup)
+ [Anexe as permissões da VPC a um perfil de personalização de modelo.](#vpc-data-access-role)
+ [Adicionar a configuração da VPC ao enviar um trabalho de personalização de modelo](#vpc-config)

### Configurar a VPC para proteger os dados durante a personalização do modelo
<a name="vpc-cm-setup"></a>

Para configurar uma VPC, siga as etapas em [Configurar uma VPC](usingVPC.md#create-vpc). É possível proteger ainda mais a VPC configurando um endpoint da VPC do S3 e usando políticas do IAM baseadas em recurso para restringir o acesso ao bucket do S3 que contém os dados de personalização de modelos, seguindo as etapas em [(Exemplo) Restringir o acesso aos dados do Amazon S3 usando a VPC](vpc-s3.md).

### Anexe as permissões da VPC a um perfil de personalização de modelo.
<a name="vpc-data-access-role"></a>

Depois de concluir a configuração da VPC, anexe as permissões a seguir ao [perfil de serviço de personalização de modelo](model-customization-iam-role.md) para permitir que ele acesse a VPC. Modifique essa política para permitir acesso apenas aos recursos da VPC necessários para o trabalho. Substitua {{${{subnet-ids}}}} e {{security-group-id}} pelos valores da sua VPC.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeVpcs",
                "ec2:DescribeDhcpOptions",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterface"
            ],
            "Resource": [
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:network-interface/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:RequestTag/BedrockManaged": [
                        "true"
                    ]
                },
                "ArnEquals": {
                    "aws:RequestTag/BedrockModelCustomizationJobArn": [
                        "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
                    ]
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterface"
            ],
            "Resource": [
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:subnet/{{subnet-id}}",
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:subnet/{{subnet-id2}}",
                "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:security-group/{{security-group-id}}"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateNetworkInterfacePermission",
                "ec2:DeleteNetworkInterface",
                "ec2:DeleteNetworkInterfacePermission"
            ],
            "Resource": "*",
            "Condition": {
                "ArnEquals": {
                    "ec2:Subnet": [
                        "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:subnet/{{subnet-id}}",
                        "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:subnet/{{subnet-id2}}"
                    ],
                    "ec2:ResourceTag/BedrockModelCustomizationJobArn": [
                        "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
                    ]
                },
                "StringEquals": {
                    "ec2:ResourceTag/BedrockManaged": "true"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:CreateTags"
            ],
            "Resource": "arn:aws:ec2:{{us-east-1}}:{{123456789012}}:network-interface/*",
            "Condition": {
                "StringEquals": {
                    "ec2:CreateAction": [
                        "CreateNetworkInterface"
                    ]
                },
                "ForAllValues:StringEquals": {
                    "aws:TagKeys": [
                        "BedrockManaged",
                        "BedrockModelCustomizationJobArn"
                    ]
                }
            }
        }
    ]
}
```

------

### Adicionar a configuração da VPC ao enviar um trabalho de personalização de modelo
<a name="vpc-config"></a>

Depois de configurar a VPC e os perfis e as permissões necessários, conforme descrito nas seções anteriores, você pode criar um trabalho de personalização de modelo que usa essa VPC.

Quando você especifica as sub-redes VPC e os grupos de segurança para um trabalho, o Amazon Bedrock cria *interfaces de rede elásticas* (ENIs) associadas aos seus grupos de segurança em uma das sub-redes. ENIs permita que o trabalho do Amazon Bedrock se conecte aos recursos em sua VPC. Para obter informações sobre isso ENIs, consulte [Elastic Network Interfaces](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ElasticNetworkInterfaces.html) no Guia do *usuário da Amazon VPC*. Etiquetas Amazon Bedrock com ENIs as quais ele cria `BedrockManaged` e `BedrockModelCustomizationJobArn` etiquetas.

Recomendamos que você forneça pelo menos uma sub-rede em cada zona de disponibilidade.

Você pode usar grupos de segurança para estabelecer regras para controlar o acesso do Amazon Bedrock aos recursos da VPC.

É possível configurar a VPC para uso no console ou por meio da API. Escolha a guia correspondente ao método de sua preferência e siga as etapas:

------
#### [ Console ]

No console do Amazon Bedrock, você especifica sub-redes da VPC e grupos de segurança na seção opcional **Configurações da VPC** ao criar o trabalho de personalização do modelo. Para obter mais informações sobre a configuração de trabalhos, consulte [Envie um trabalho de personalização de modelo para ajuste fino](model-customization-submit.md).

**nota**  
Em um trabalho que inclui a configuração da VPC, o console não pode criar automaticamente um perfil de serviço para você. Siga as orientações em [Criar um perfil de serviço para a personalização de modelo](model-customization-iam-role.md) para criar uma função personalizada.

------
#### [ API ]

Ao enviar uma [CreateModelCustomizationJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html)solicitação, você pode incluir um `VpcConfig` como parâmetro de solicitação para especificar as sub-redes VPC e os grupos de segurança a serem usados, como no exemplo a seguir.

```
"vpcConfig": { 
    "securityGroupIds": [
        "{{${{sg-0123456789abcdef0}}}}"
    ],
    "subnets": [
        "{{${{subnet-0123456789abcdef0}}}}",
        "{{${{subnet-0123456789abcdef1}}}}",
        "{{${{subnet-0123456789abcdef2}}}}"
    ]
}
```

------