

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

# Habilitar o acesso entre contas
<a name="feature-store-cross-account-access"></a>

As permissões de acesso são permissões de somente leitura, leitura e gravação e administração. O nome da permissão, a descrição e a lista de permissões específicas APIs disponíveis para cada permissão estão listados a seguir:
+ Permissão somente leitura (`AWSRAMPermissionSageMakerFeatureGroupReadOnly`): o privilégio de leitura permite que contas do consumidor de atributos leiam registros nos grupos de atributos compartilhados e visualizem detalhes e metadados. 
  + `DescribeFeatureGroup`: recupera detalhes sobre um grupo de atributos e sua configuração
  + `DescribeFeatureMetadata`: mostra os metadados de um atributo dentro de um grupo de atributos
  + `BatchGetRecord`: recupera um lote de registros de um grupo de atributos
  + `GetRecord`: recupera um registro de registros de um grupo de atributos
+ Permissão de leitura e gravação (`AWSRAMPermissionSagemakerFeatureGroupReadWrite`): o privilégio de leitura e gravação permite que contas do consumidor de atributos gravem e excluam registros dos grupos de atributos compartilhados, além das permissões de leitura.
  + `PutRecord`: grava um registro em um grupo de atributos
  + `DeleteRecord`: remove um registro de um grupo de atributos
  + APIs listado em `AWSRAMPermissionSageMakerFeatureGroupReadOnly`
+ Permissão de administrador (`AWSRAMPermissionSagemakerFeatureGroupAdmin`): o privilégio de administrador permite que as contas do consumidor de atributos atualizem a descrição e os parâmetros dos atributos nos grupos de atributos compartilhados, atualizem a configuração dos grupos de atributos compartilhados, além das permissões de leitura e gravação.
  + `DescribeFeatureMetadata`: mostra os metadados de um atributo dentro de um grupo de atributos
  + `UpdateFeatureGroup`: atualiza a configuração de um grupo de atributos
  + `UpdateFeatureMetadata`: atualiza a descrição e os parâmetros de um atributo no grupo de atributos
  + APIs listado em `AWSRAMPermissionSagemakerFeatureGroupReadWrite`

Nos tópicos a seguir, você saberá como compartilhar grupos de atributos de armazenamento on-line e offline. Há diferenças entre os dois quando se trata de compartilhamento.

**Topics**
+ [Compartilhe grupos de recursos on-line com AWS Resource Access Manager](feature-store-cross-account-access-online-store.md)
+ [Acesso ao armazenamento offline entre contas](feature-store-cross-account-access-offline-store.md)

# Compartilhe grupos de recursos on-line com AWS Resource Access Manager
<a name="feature-store-cross-account-access-online-store"></a>

Com AWS Resource Access Manager (AWS RAM), você pode compartilhar com segurança grupos de recursos on-line da Amazon SageMaker Feature Store com outros. Contas da AWS Os membros da sua equipe explorar e acessar grupos de atributos e atributos que abrangem várias contas, promovendo a consistência dos dados, simplificando a colaboração e reduzindo a duplicação de esforços.

A conta do proprietário do recurso pode compartilhar recursos com outra pessoa Contas da AWS concedendo permissões usando AWS RAM. A conta do consumidor do recurso é Conta da AWS aquela com quem um recurso é compartilhado, limitada pelas permissões concedidas pela conta do proprietário do recurso. Se você é uma organização, talvez queira aproveitar AWS Organizations, com a qual você pode compartilhar recursos com indivíduos Contas da AWS, com todas as contas da sua organização ou em uma Unidade Organizacional (OU), sem precisar aplicar permissões a cada conta. Para vídeos instrutivos e mais informações sobre AWS RAM conceitos e benefícios, consulte [O que é AWS Resource Access Manager?](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) no Guia do AWS RAM usuário.

Observe que há um limite máximo flexível para as transações por segundo (TPS) por API por Conta da AWS. O limite máximo de TPS se aplica a *todas* as transações nos recursos dentro da conta do proprietário do recurso, portanto, as transações das contas do consumidor de recursos também contam para esse limite máximo. Para obter mais informações sobre service quotas e como solicitar um aumento de cota, consulte [Service quotas da AWS](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html).

Esta seção aborda como a conta do proprietário do atributo pode escolher grupos de atributos e conceder privilégios de acesso (somente leitura, leitura/gravação e administrador) às contas do consumidor de atributos e, em seguida, como as contas de consumidores de atributos com privilégios de acesso podem usar esses grupos de atributos. As permissões de acesso não permitem que as contas do consumidor de atributos pesquisem e detectem grupos de atributos. Para permitir que contas do consumidor de atributos pesquisem e detectem grupos de atributos a partir da conta do proprietário do atributo, a conta do proprietário do atributo deve conceder permissão de detecção às contas do consumidor de atributos, onde todos os grupos de atributos dentro da conta do proprietário do atributo podem ser detectados pelas contas do consumidor de atributos. Para obter mais informações sobre como conceder permissões de detecção, consulte [Habilitar a detecção entre contas](feature-store-cross-account-discoverability.md).

Os tópicos a seguir mostram como compartilhar recursos da loja virtual da Feature Store usando o AWS RAM console. Para obter informações sobre como compartilhar seus recursos e conceder permissões AWS usando o AWS RAM console ou AWS Command Line Interface (AWS CLI), consulte [Compartilhamento de seus AWS recursos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html).

**Topics**
+ [Compartilhar as entidades do seu grupo de atributos](feature-store-cross-account-access-online-store-share-feature-group.md)
+ [Usar os recursos compartilhados do armazenamento on-line com permissões de acesso](feature-store-cross-account-access-online-store-use.md)

# Compartilhar as entidades do seu grupo de atributos
<a name="feature-store-cross-account-access-online-store-share-feature-group"></a>

Como conta do proprietário do recurso, você pode usar o tipo de recurso de grupo de recursos da Amazon SageMaker Feature Store para compartilhar entidades de grupos de recursos, criando um compartilhamento de recursos em AWS Resource Access Manager (AWS RAM). 

Use as instruções a seguir junto com as instruções sobre como [compartilhar seus AWS recursos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create) no Guia AWS RAM do usuário.

Ao compartilhar o tipo de recurso do grupo de recursos usando o AWS RAM console, você precisa fazer as seguintes escolhas.

1. **Especifique os detalhes do compartilhamento de recursos**: 
   + Tipo de recurso: Escolha **grupos de recursos de SageMaker IA**.
   + ARN: escolha o ARN do grupo de atributos com o formato: `arn:aws:sagemaker:us-east-1:111122223333:feature-group/your-feature-group-name`.

     `us-east-1` é a região do atributo, `111122223333` é o ID da conta do proprietário do atributo e `your-feature-group-name` é o nome do grupo de atributos que você está compartilhando.
   + ID do atributo: escolha o grupo de atributos, `your-feature-group-name`, ao qual você deseja conceder permissões de acesso.

1. **Associar permissões gerenciadas**: 
   + Permissão gerenciada: escolha a permissão de acesso. Para obter mais informações sobre permissões de acesso, consulte [Habilitar o acesso entre contas](feature-store-cross-account-access.md).

1. **Conceder acesso a entidades principais**:
   + Escolha o tipo de entidade principal (Conta da AWS, Organização, Unidade organizacional, perfil do IAM ou usuário do IAM) e insira o ID ou o ARN apropriados.

1. **Revisar e criar**: 
   + Revise e, em seguida, escolha **Criar compartilhamento de recursos**.

Conceder qualquer permissão de acesso não concede às contas do consumidor de atributos a permissão de detecção, portanto, as contas do consumidor de atributos com permissões de acesso não podem pesquisar e detectar esses grupos de atributos. Para permitir que contas de consumidores de atributos pesquisem e detectem grupos de atributos a partir da conta do proprietário do atributo, a conta do proprietário do atributo deve conceder a permissão de detecção às contas de consumidores do atributo, onde *todos* os grupos de atributos dentro da conta do proprietário do atributo podem ser detectados pelas contas do consumidor do atributo. Para obter mais informações sobre como conceder permissões de detecção, consulte [Habilitar a detecção entre contas](feature-store-cross-account-discoverability.md).

Se as contas do consumidor de atributos receberem apenas permissões de acesso, as entidades do grupo de atributos ainda poderão ser visualizadas no AWS RAM. Para ver os recursos em AWS RAM, consulte [Acessar AWS recursos compartilhados com você](https://docs.aws.amazon.com/ram/latest/userguide/working-with-shared.html) no Guia AWS RAM do Usuário.

Pode levar alguns minutos para que as associações de compartilhamento de recursos e entidades principais, ou conta do consumidor do recurso, sejam concluídas. Depois que as associações do compartilhamento de recursos e entidades principais forem definidas, as contas do consumidor de recursos especificadas receberão um convite para participar desse compartilhamento. As contas dos consumidores de recursos podem ver e aceitar os convites abrindo a página [Compartilhado comigo: compartilhamentos de recursos](https://console.aws.amazon.com/ram/home#SharedResourceShares) no AWS RAM console. Os convites não são enviados nos seguintes casos:
+ Se você faz parte de uma organização AWS Organizations e o compartilhamento em sua organização está ativado, os diretores da organização obtêm acesso automático aos recursos compartilhados sem convites.
+ Se você compartilhar com o Conta da AWS proprietário do recurso, os diretores dessa conta terão acesso automático aos recursos compartilhados sem convites.

Para obter mais informações sobre como aceitar e usar um compartilhamento de recursos em AWS RAM, consulte [Usando AWS recursos compartilhados](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-shared.html) no Guia AWS RAM do usuário.

## Compartilhe grupos de recursos da loja virtual usando o AWS SDK para Python (Boto3)
<a name="feature-store-cross-account-access-online-store-python-sdk-example"></a>

Você pode usar o AWS SDK para Python (Boto3) for AWS RAM APIs para criar um compartilhamento de recursos. O código a seguir é um exemplo de um ID de conta do proprietário do atributo `111122223333` criando um compartilhamento de atributos chamado `'test-cross-account-fg'` e compartilhando o grupo de atributos chamado `'my-feature-group'` com o ID da conta do consumidor do atributo `444455556666` enquanto concede a permissão `AWSRAMPermissionSageMakerFeatureGroupReadOnly`. Para obter mais informações sobre permissões de acesso, consulte [Habilitar o acesso entre contas](feature-store-cross-account-access.md). Para usar o SDK do Python para AWS RAM APIs, você precisa anexar uma política gerenciada de acesso AWS RAM total à função de execução. Consulte a API [create\$1resource\$1share](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ram/client/create_resource_share.html) AWS RAM para obter mais detalhes.

```
import boto3

# Choose feature group name
feature_group_name = 'my-feature-group' # Change to your feature group name 

# Share 'my-feature-group' with other account
ram_client = boto3.client("ram")
response = ram_client.create_resource_share(
    name='test-cross-account-fg', # Change to your custom resource share name
    resourceArns=[
        'arn:aws:sagemaker:us-east-1:111122223333:feature-group/' + feature_group_name, # Change 111122223333 to the resource owner account ID
    ],
    principals=[
        '444455556666', # Change 444455556666 to the resource consumer account ID
    ],
    permissionArns = ["arn:aws:ram::aws:permission/AWSRAMPermissionSageMakerFeatureGroupReadOnly"]
)
```

As entidades principais são atores em um sistema de segurança. Em uma política baseada em recursos, as entidades principais permitidas são usuários do IAM, perfis do IAM, a conta raiz ou outro serviço AWS service (Serviço da AWS).

# Usar os recursos compartilhados do armazenamento on-line com permissões de acesso
<a name="feature-store-cross-account-access-online-store-use"></a>

A conta do proprietário do recurso deve conceder permissões às contas do consumidor de recursos para permitir privilégios de detecção, somente leitura, gravação ou administrador com um recurso compartilhado. Nas seções a seguir, fornecemos instruções sobre como aceitar um convite para acessar atributos compartilhados e exemplos mostrando como visualizar e interagir grupos de atributos compartilhados.

**Aceitar um convite para acessar recursos compartilhados usando o AWS RAM**

Como conta do consumidor de recursos, você receberá um convite para participar de um compartilhamento de recursos depois que a conta do proprietário do recurso conceder permissão. Para aceitar o convite para qualquer recurso compartilhado, abra a página [Compartilhado comigo: compartilhamentos de recursos](https://console.aws.amazon.com/ram/home#SharedResourceShares) no AWS RAM console para ver e responder aos convites. Os convites não são enviados nos seguintes casos:
+ Se você faz parte de uma organização AWS Organizations e o compartilhamento em sua organização está ativado, os diretores da organização obtêm acesso automático aos recursos compartilhados sem convites.
+ Se você compartilhar com o Conta da AWS proprietário do recurso, os diretores dessa conta terão acesso automático aos recursos compartilhados sem convites.

Para obter mais informações sobre como aceitar e usar um compartilhamento de recursos em AWS RAM, consulte [Usando AWS recursos compartilhados](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-shared.html) no Guia AWS RAM do usuário.

## Exibir recursos compartilhados no AWS RAM console
<a name="feature-store-cross-account-access-online-store-use-view"></a>

A concessão de qualquer permissão de acesso não dá às contas do consumidor de atributos a permissão de detecção, portanto, as contas do consumidor de atributos com permissões de acesso não podem pesquisar e detectar esses grupos de atributos. Para permitir que contas de consumidores de atributos pesquisem e detectem grupos de atributos a partir da conta do proprietário do atributo, a conta do proprietário do atributo deve conceder a permissão de detecção às contas de consumidores do atributo, onde todos os grupos de atributos dentro da conta do proprietário do atributo podem ser detectados pelas contas do consumidor do atributo. Para obter mais informações sobre como conceder permissões de detecção, consulte [Habilitar a detecção entre contas](feature-store-cross-account-discoverability.md).

Para ver os recursos compartilhados no AWS RAM console, abra a página [Compartilhado comigo: compartilhamentos de recursos](https://console.aws.amazon.com/ram/home#SharedResourceShares) no AWS RAM console. 

## Ler e gravar ações com um exemplo de grupos de atributos compartilhados
<a name="feature-store-cross-account-access-online-store-use-read-write-actions"></a>

Depois que sua conta de consumidor de atributos receber as permissões apropriadas da conta do proprietário do atributo, você poderá realizar ações nos atributos compartilhados usando o SDK do Feature Store. Você pode fazer isso fornecendo o ARN do recurso como o `FeatureGroupName`. Para obter o ARN do grupo de recursos, você pode usar a AWS SDK para Python (Boto3) [https://boto3.amazonaws.com/v1/documentation/api/1.26.98/reference/services/sagemaker/client/describe_feature_group.html#describe-feature-group](https://boto3.amazonaws.com/v1/documentation/api/1.26.98/reference/services/sagemaker/client/describe_feature_group.html#describe-feature-group)função ou usar a interface do usuário do console. Para obter informações sobre como usar a interface de usuário do console para visualizar detalhes do grupo de atributos, consulte [Visualizar detalhes do grupo de atributos a partir do console](feature-store-use-with-studio.md#feature-store-view-feature-group-detail-studio).

Os exemplos a seguir usam `PutRecord` e `GetRecord` com uma entidade de grupo de atributos compartilhada. Consulte a sintaxe de solicitação e resposta na AWS SDK para Python (Boto3) documentação de [https://boto3.amazonaws.com/v1/documentation/api/1.26.98/reference/services/firehose/client/put_record.html#put-record](https://boto3.amazonaws.com/v1/documentation/api/1.26.98/reference/services/firehose/client/put_record.html#put-record)e. [https://boto3.amazonaws.com/v1/documentation/api/1.26.98/reference/services/sagemaker-featurestore-runtime/client/get_record.html#get-record](https://boto3.amazonaws.com/v1/documentation/api/1.26.98/reference/services/sagemaker-featurestore-runtime/client/get_record.html#get-record)

```
import boto3

sagemaker_featurestore_runtime = boto3.client('sagemaker-featurestore-runtime')

# Put record into feature group named 'test-fg' within the resource owner account ID 111122223333
featurestore_runtime.put_record(
    FeatureGroupName="arn:aws:sagemaker:us-east-1:111122223333:feature-group/test-fg", 
    Record=[value.to_dict() for value in record] # You will need to define record prior to calling PutRecord
)
```

```
import boto3

sagemaker_featurestore_runtime = boto3.client('sagemaker-featurestore-runtime')

# Choose record identifier
record_identifier_value = str(2990130)

# Get record from feature group named 'test-fg' within the resource owner account ID 111122223333
featurestore_runtime.get_record(
    FeatureGroupName="arn:aws:sagemaker:us-east-1:111122223333:feature-group/test-fg", 
    RecordIdentifierValueAsString=record_identifier_value
)
```

Para obter mais informações sobre como conceder permissões a entidades do grupo de atributos, consulte [Compartilhar as entidades do seu grupo de atributos](feature-store-cross-account-access-online-store-share-feature-group.md).

# Acesso ao armazenamento offline entre contas
<a name="feature-store-cross-account-access-offline-store"></a>

 A Amazon SageMaker Feature Store permite que os usuários criem um grupo de recursos em uma conta (Conta A) e o configurem com uma loja offline usando um bucket Amazon S3 em outra conta (Conta B). É possível estabelecer essa definição usando as etapas da seção a seguir.

**Topics**
+ [Etapa 1: configurar a função de acesso ao armazenamento offline na Conta A](#feature-store-setup-step1)
+ [Etapa 2: configurar um bucket Amazon S3 do armazenamento offline na Conta B](#feature-store-setup-step2)
+ [Etapa 3: configurar uma chave de AWS KMS criptografia de loja offline na Conta A](#feature-store-setup-step3)
+ [Etapa 4: criar um grupo de atributos na Conta A](#feature-store-setup-step4)

## Etapa 1: configurar a função de acesso ao armazenamento offline na Conta A
<a name="feature-store-setup-step1"></a>

Primeiro, configure uma função para a Amazon SageMaker Feature Store para gravar os dados na loja offline. A maneira mais simples de fazer isso é criar uma nova função usando a política `AmazonSageMakerFeatureStoreAccess` ou usar uma função existente que já tenha a política `AmazonSageMakerFeatureStoreAccess` anexada. Este documento se refere a essa política como `Account-A-Offline-Feature-Store-Role-ARN`. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetBucketAcl",
                "s3:PutObjectAcl"
            ],
            "Resource": [
                "arn:aws:s3:::*SageMaker*",
                "arn:aws:s3:::*Sagemaker*",
                "arn:aws:s3:::*sagemaker*"
            ]
        }
    ]
}
```

------

O trecho de código anterior mostra a política `AmazonSageMakerFeatureStoreAccess`. Por padrão, a seção `Resource` da política é limitada aos buckets do S3 com nomes que contêm `SageMaker`, `Sagemaker` ou `sagemaker`. Isso significa que o bucket do Amazon S3 do armazenamento offline que está sendo usado deve seguir essa convenção de nomenclatura. Se esse não for o seu caso, ou se você quiser limitar ainda mais o escopo do recurso, você pode copiar e colar a política na sua política do bucket do Amazon S3 no console, personalizar a seção `Resource` como `arn:aws:s3:::your-offline-store-bucket-name` e, em seguida, anexá-la à função. 

Além disso, essa função deve ter AWS KMS permissões anexadas. No mínimo, é necessária a permissão `kms:GenerateDataKey` para poder gravar no armazenamento offline usando sua chave gerenciada pelo cliente. Consulte a Etapa 3 para saber por que uma chave gerenciada pelo cliente é necessária para o cenário de várias contas e como configurá-la. O seguinte exemplo mostra uma política em linha: 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey"
            ],
            "Resource": "arn:aws:kms:*:111122223333:key/*"
        }
    ]
}
```

------

A seção `Resource` desta política tem como escopo qualquer chave na Conta A. Para detalhar isso, depois de configurar a chave do KMS do armazenamento offline na Etapa 3, retome a essa política e substitua-a pela chave ARN.

## Etapa 2: configurar um bucket Amazon S3 do armazenamento offline na Conta B
<a name="feature-store-setup-step2"></a>

Crie um bucket do Amazon S3 na Conta B. Se você estiver usando a política `AmazonSageMakerFeatureStoreAccess` padrão, o nome do bucket deverá incluir `SageMaker`, `Sagemaker` ou `sagemaker`. Edite a política do bucket conforme mostrado no exemplo a seguir para permitir que a Conta A leia e grave objetos.

Este documento se refere ao exemplo de política do bucket a seguir como `Account-B-Offline-Feature-Store-Bucket`. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3CrossAccountBucketAccess",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:PutObjectAcl",
                "s3:GetBucketAcl"
            ],
            "Principal": {
                "AWS": [
                    "Account-A-Offline-Feature-Store-Role-ARN"
                ]
            },
            "Resource": [
                "arn:aws:s3:::offline-store-bucket-name/*",
                "arn:aws:s3:::offline-store-bucket-name"
            ]
        }
    ]
}
```

------

Na política anterior, o principal é`Account-A-Offline-Feature-Store-Role-ARN`, que é a função criada na Conta A na Etapa 1 e fornecida à Amazon SageMaker Feature Store para gravar na loja offline. Você pode fornecer várias funções de ARN em `Principal`.

## Etapa 3: configurar uma chave de AWS KMS criptografia de loja offline na Conta A
<a name="feature-store-setup-step3"></a>

A Amazon SageMaker Feature Store garante que a criptografia do lado do servidor esteja sempre habilitada para objetos do Amazon S3 na loja off-line. Para casos de uso entre contas, você deve fornecer uma chave gerenciada pelo cliente para controlar quem pode fazer gravações no armazenamento offline (nesse caso, `Account-A-Offline-Feature-Store-Role-ARN` da Conta A) e quem pode fazer leituras no armazenamento offline (nesse caso, identidades da Conta B). 

Este documento se refere ao exemplo de política de chaves a seguir como `Account-A-Offline-Feature-Store-KMS-Key-ARN`.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "key-consolepolicy-3",
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Sid": "Allow access for Key Administrators",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                "arn:aws:iam::111122223333:role/Administrator"
                ]
            },
            "Action": [
                "kms:Create*",
                "kms:Describe*",
                "kms:Enable*",
                "kms:List*",
                "kms:Put*",
                "kms:Update*",
                "kms:Revoke*",
                "kms:Disable*",
                "kms:Get*",
                "kms:Delete*",
                "kms:TagResource",
                "kms:UntagResource",
                "kms:ScheduleKeyDeletion",
                "kms:CancelKeyDeletion"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow Feature Store to get information about the customer managed key",
            "Effect": "Allow",
            "Principal": {
                "Service": "sagemaker.amazonaws.com"
            },
            "Action": [
                "kms:Describe*",
                "kms:Get*",
                "kms:List*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow use of the key",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "Account-A-Offline-Feature-Store-Role-ARN",
                    "arn:aws:iam::444455556666:root"
                ]
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:DescribeKey",
                "kms:CreateGrant",
                "kms:RetireGrant",
                "kms:ReEncryptFrom",
                "kms:ReEncryptTo",
                "kms:GenerateDataKey",
                "kms:ListAliases",
                "kms:ListGrants"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Etapa 4: criar um grupo de atributos na Conta A
<a name="feature-store-setup-step4"></a>

Em seguida, crie o grupo de atributos na Conta A, com um bucket Amazon S3 do armazenamento offline na Conta B. Para fazer isso, forneça os seguintes parâmetros para `RoleArn`, `OfflineStoreConfig.S3StorageConfig.KmsKeyId` e `OfflineStoreConfig.S3StorageConfig.S3Uri`, respectivamente: 
+ Forneça `Account-A-Offline-Feature-Store-Role-ARN` como `RoleArn`.
+ Forneça `Account-A-Offline-Feature-Store-KMS-Key-ARN` para `OfflineStoreConfig.S3StorageConfig.KmsKeyId`.
+ Forneça `Account-B-Offline-Feature-Store-Bucket` para `OfflineStoreConfig.S3StorageConfig.S3Uri`.