

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.

# Detección y acceso a grupos de características entre cuentas
<a name="feature-store-cross-account"></a>

Los científicos e ingenieros de datos pueden aprovechar la oportunidad de explorar y acceder a características que abarcan varias cuentas, a fin de promover la coherencia de datos, agilizar la colaboración y reducir la duplicación de esfuerzos. 

Con Amazon SageMaker Feature Store, puedes compartir recursos de grupos de funciones entre cuentas. Los recursos que se pueden compartir en el almacén de características son las entidades del grupo de características o el catálogo del grupo de características, donde el catálogo del grupo de características contiene todas las entidades del grupo de características de su cuenta. La cuenta propietaria del recurso comparte los recursos con las cuentas consumidoras del recurso. Hay dos categorías distintas de permisos asociados al uso compartido de recursos:
+ **Permiso de detección**: la *detección* significa poder ver los nombres y metadatos de los grupos de características. Cuando se comparte el catálogo del grupo de características y se concede el permiso de detección, todas las entidades del grupo de características de la cuenta desde la que se comparte (cuenta propietaria del recurso) pasan a poder ser detectadas por las cuentas con las que se comparte (cuenta consumidora del recurso). Por ejemplo, si hace que una cuenta consumidora del recurso pueda detectar el catálogo del grupo de características de la cuenta propietaria del recurso, las entidades principales de la cuenta consumidora del recurso podrán ver todos los grupos de características contenidos en la cuenta propietaria del recurso. Esto significa que la detección es “todo o nada” a nivel de cuenta (regionalizada). Este permiso se concede a las cuentas consumidoras de recursos mediante el tipo de recurso del catálogo del grupo de características.
+ **Permisos de acceso**: los permisos de acceso se conceden a nivel de recurso del grupo de características (no a nivel de cuenta). Esto da un control más detallado sobre la concesión del acceso a los datos. Los tipos de permisos de acceso que se pueden conceder son: solo lectura, lectura-escritura y administrador. Por ejemplo, puede seleccionar que las entidades principales de la cuenta consumidora del recurso solo puedan acceder a algunos grupos de características de la cuenta propietaria del recurso, en función de las necesidades de la empresa. Este permiso se concede a las cuentas consumidoras de recursos mediante el tipo de recurso del catálogo del grupo de características y especificando las entidades del grupo de características.

Es importante tener en cuenta la distinción entre detección y acceso al configurar el uso compartido entre cuentas. Además, los métodos para compartir recursos varían en función de si se comparten grupos de características en línea o sin conexión. Para obtener información sobre los grupos de características en línea y sin conexión, consulte [Conceptos del almacén de características](feature-store-concepts.md). En los siguientes temas, puede obtener información sobre cómo aplicar los permisos de detección y acceso a sus recursos compartidos.

El siguiente diagrama de ejemplo muestra el recurso del catálogo del grupo de características en comparación con una entidad del recurso de grupo de características. El catálogo del grupo de características contiene *todas* las entidades del grupo de características y se puede compartir con el permiso de detección. Cuando se le concede un permiso de detección, la cuenta consumidora del recurso puede buscar y detectar *todas* las entidades del grupo de características de la cuenta propietaria del recurso. Una entidad del grupo de características contiene sus datos de machine learning y se puede compartir con el permiso de acceso. Cuando se le concede un permiso de acceso, la cuenta consumidora del recurso puede acceder a los datos del grupo de características, con el acceso determinado por el permiso de acceso correspondiente.

 ![\[Example showing how a resource owner account contains a feature group catalog, which contains feature groups.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/feature-store/feature-store-cross-account-resource-types.png) 

**Topics**
+ [Habilitar la detección entre cuentas](feature-store-cross-account-discoverability.md)
+ [Habilitar el acceso entre cuentas](feature-store-cross-account-access.md)

# Habilitar la detección entre cuentas
<a name="feature-store-cross-account-discoverability"></a>

Con AWS Resource Access Manager (AWS RAM) puedes compartir de forma segura el catálogo de grupos de características, que contiene todos tus grupos de características y recursos de características, con otros Cuentas de AWS usuarios. Esto permite a los miembros del equipo buscar y detectar grupos de características y características que abarcan varias cuentas, lo que promueve la coherencia de datos, agiliza la colaboración y reduce la duplicación de esfuerzos.

La cuenta del propietario del recurso puede compartir recursos con otras personas Cuentas de AWS mediante la concesión de permisos de uso AWS RAM. La cuenta del consumidor de recursos es aquella Cuenta de AWS con la que se comparte un recurso y está limitada por los permisos otorgados por la cuenta del propietario del recurso. Si es una organización, puede aprovechar esta opción AWS Organizations, con la que puede compartir recursos de forma individual Cuentas de AWS, con todas las cuentas de la organización o en una unidad organizativa (OU), sin tener que aplicar permisos a cada cuenta. Para ver vídeos instructivos y más información sobre AWS RAM los conceptos y las ventajas, consulte [¿Qué es? AWS Resource Access Manager](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) en la Guía del AWS RAM usuario.

En esta sección se explica cómo la cuenta propietaria del recurso puede elegir el catálogo del grupo de características y conceder el privilegio de detección a las cuentas consumidoras de recursos y, a continuación, cómo las cuentas consumidoras de recursos con el privilegio de detección pueden utilizar la función de búsqueda y detectar los grupos de características de la cuenta propietaria del recurso. El permiso de detección no otorga permisos de acceso (solo lectura, lectura-escritura o administrador). Los permisos de acceso se otorgan a nivel de recursos y no a nivel de cuenta. Para obtener información acerca de cómo otorgar permisos de acceso, consulte [Habilitar el acceso entre cuentas](feature-store-cross-account-access.md).

En los siguientes temas se explica cómo compartir el catálogo del grupo de características y cómo buscar recursos compartidos con los permisos de detección aplicados.

**Topics**
+ [Compartir el catálogo del grupo de características](feature-store-cross-account-discoverability-share-feature-group-catalog.md)
+ [Búsqueda de recursos detectables](feature-store-cross-account-discoverability-use.md)

# Compartir el catálogo del grupo de características
<a name="feature-store-cross-account-discoverability-share-feature-group-catalog"></a>

El catálogo del grupo de características, `DefaultFeatureGroupCatalog`, contiene *todas * las entidades del grupo de características que son propiedad de la cuenta propietaria del recurso. La cuenta propietaria del recurso puede compartir el catálogo para permitir la detección de una o varias cuentas consumidoras de recursos. Esto se hace mediante la creación de un recurso compartido en AWS Resource Access Manager (AWS RAM). Un grupo de características es el recurso principal de Amazon SageMaker Feature Store y se compone de definiciones de características y registros gestionados por Feature Store. Para obtener más información acerca de los grupos de características, consulte [Conceptos del almacén de características](feature-store-concepts.md).

La capacidad de detección significa que las cuentas consumidoras de recursos pueden buscar los recursos detectables. Los recursos detectables se ven como si estuvieran en su propia cuenta (salvo las etiquetas). Al permitir que se pueda detectar el catálogo del grupo de características, las cuentas consumidoras de recursos no reciben de forma predeterminada permisos de acceso (solo lectura, lectura-escritura o administrador). Los permisos de acceso se otorgan a nivel de recursos y no a nivel de cuenta. Para obtener información acerca de cómo otorgar permisos de acceso, consulte [Habilitar el acceso entre cuentas](feature-store-cross-account-access.md).

Para permitir la detección entre cuentas, tendrás que especificar el catálogo de recursos de SageMaker IA y el catálogo de grupos de características y, al mismo tiempo, seguir las instrucciones [AWS RAM para crear un recurso compartido](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create) de la guía para AWS RAM desarrolladores. A continuación, explicamos las especificaciones para usar la AWS RAM consola e instrucciones.

1. **Especifique los detalles del recurso compartido**: 
   + Tipo de recurso: elija **catálogos de recursos de SageMaker IA**.
   + ARN: elija el ARN del catálogo del grupo de características con el formato: `arn:aws:sagemaker:us-east-1:111122223333:sagemaker-catalog/DefaultFeatureGroupCatalog`.

     *`us-east-1`* es la región del recurso y *`111122223333`* es el ID de la cuenta propietaria del recurso.
   + ID de recurso: elija `DefaultFeatureGroupCatalog`.

1. **Asocie los permisos administrados**: 
   + Permiso administrado: elija `AWSRAMPermissionSageMakerCatalogResourceSearch`.

1. **Conceda acceso a las entidades principales**:
   + Elija los tipos de entidades principales (Cuenta de AWS, organización o unidad organizativa) e introduzca el identificador correspondiente.

     Si trabaja en una organización, quizás quiera aprovechar las ventajas de AWS Organizations. Con Organizations, puede compartir recursos con una persona Cuentas de AWS, con todas las cuentas de su organización o con una unidad organizativa (OU). Esto simplifica la aplicación de permisos, ya que no hay que aplicarlos a cada cuenta. Para obtener más información sobre cómo compartir sus recursos y conceder permisos internos AWS, consulte [Habilitar el uso compartido de recursos AWS Organizations](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-orgs) en la Guía para AWS Resource Access Manager desarrolladores.

1. **Revise y cree**: 
   + Revise y, a continuación, elija **Crear recurso compartido**.

Las asociaciones del recurso compartido y la entidad principal, o la cuenta del recurso compartido, pueden tardar unos minutos en completarse. Una vez establecidas la cuota de recursos y las asociaciones de entidades principales, las cuentas consumidoras de recursos especificadas reciben una invitación para unirse al recurso compartido. Las cuentas de los consumidores de recursos pueden ver y aceptar las invitaciones abriendo la página [Compartidos conmigo: recursos compartidos](https://console.aws.amazon.com/ram/home#SharedResourceShares) en la AWS RAM consola. Para obtener más información sobre cómo aceptar y ver los recursos en AWS RAM, consulta [Acceder a AWS los recursos que se han compartido contigo](https://docs.aws.amazon.com/ram/latest/userguide/working-with-shared.html). No se envían invitaciones en los siguientes casos:
+ Si forma parte de una organización AWS Organizations y el uso compartido en su organización está activado. En este caso, las entidades principales de la organización obtienen acceso automáticamente a los recursos compartidos sin necesidad de recibir invitaciones.
+ Si compartes con el Cuenta de AWS propietario del recurso, los directores de esa cuenta tendrán acceso automáticamente a los recursos compartidos sin necesidad de invitaciones.

Para obtener más información sobre la aceptación y el uso de un recurso compartido, consulte [Búsqueda de recursos detectables](feature-store-cross-account-discoverability-use.md).

## Comparta el catálogo de grupos de funciones mediante el AWS SDK para Python (Boto3)
<a name="feature-store-cross-account-discoverability-sagemaker-catalog-resource-type-python-sdk-example"></a>

Puede usar el formulario AWS SDK para Python (Boto3) AWS RAM APIs para crear un recurso compartido. El siguiente código es un ejemplo de un identificador de cuenta de propietario de un recurso *`111122223333`* en la región*us-east-1*. El propietario del recurso está creando un recurso compartido denominado *`test-cross-account-catalog`*. Está compartiendo el catálogo del grupo de características con el ID de la cuenta del consumidor de recursos *`444455556666`*. Para usar el SDK de Python AWS RAM APIs, asocie la `AWSRAMPermissionSageMakerCatalogResourceSearch` política al rol de ejecución. Consulte [AWS RAM APIs](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ram/client/create_resource_share.html) para obtener más detalles.

```
#Call list resource catalogs as a prerequisite for RAM share
sagemaker_client.list_resource_catalogs()

# Share DefaultFeatureGroupCatalog with other account
ram_client = boto3.client("ram")
response = ram_client.create_resource_share(
    name='test-cross-account-catalog', # Change to your custom resource share name
    resourceArns=[
        'arn:aws:sagemaker:us-east-1:111122223333:sagemaker-catalog/' + 'DefaultFeatureGroupCatalog', # Change 111122223333 to the resource owner account ID
    ],
    principals=[
        '444455556666', # Change 444455556666 to the resource consumer account ID
    ],
    permissionArns = ["arn:aws:ram::aws:permission/AWSRAMPermissionSageMakerCatalogResourceSearch"] # AWSRAMPermissionSageMakerCatalogResourceSearch is the only policy allowed for SageMaker Catalog
)
```

Las entidades principales son actores de un sistema de seguridad. En una política basada en recursos, los principales permitidos son los usuarios de IAM, las funciones de IAM, la cuenta raíz u otro servicio. AWS 

# Búsqueda de recursos detectables
<a name="feature-store-cross-account-discoverability-use"></a>

La cuenta propietaria del recurso debe conceder permisos a las cuentas consumidoras de recursos para que puedan ser detectadas o tengan privilegios de acceso (solo lectura, lectura-escritura o administrador) a un recurso compartido. En las siguientes secciones, se proporcionan instrucciones sobre cómo aceptar una invitación a recursos compartidos y ejemplos que muestran cómo buscar grupos de características detectables.

**Aceptar una invitación a recursos compartidos**

Como cuenta consumidora del recurso, recibirá una invitación para unirse a un recurso compartido una vez que la cuenta propietaria del recurso le haya concedido permiso. Para aceptar la invitación a cualquier recurso compartido, abre la página [Compartidos conmigo: recursos compartidos](https://console.aws.amazon.com/ram/home#SharedResourceShares) en la AWS RAM consola para ver las invitaciones y responderlas. No se envían invitaciones en los siguientes casos:
+ Si formas parte de una organización AWS Organizations y la opción de compartir en tu organización está habilitada, los directores de la organización tendrán acceso automáticamente a los recursos compartidos sin necesidad de invitaciones.
+ Si compartes con el Cuenta de AWS propietario del recurso, los directores de esa cuenta tendrán acceso automáticamente a los recursos compartidos sin necesidad de invitaciones.

Para obtener más información sobre la aceptación y el uso de un recurso compartido en AWS RAM, consulte [Responder a la invitación a compartir recursos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-shared.html).

## Ejemplo de búsqueda de grupos de características detectables
<a name="feature-store-cross-account-discoverability-use-search"></a>

Una vez que los recursos se comparten con una cuenta de consumidor de recursos con el permiso de detección aplicado, la cuenta de consumidor de recursos puede buscar y descubrir los recursos compartidos en Amazon SageMaker Feature Store mediante la interfaz de usuario de la consola y el SDK de Feature Store. Tenga en cuenta que no puede buscar en las etiquetas para recursos entre cuentas. El número máximo de catálogos de grupos de características visibles es 1000. Para obtener más información sobre cómo conceder permisos de detección, consulte [Habilitar la detección entre cuentas](feature-store-cross-account-discoverability.md).

Para obtener más información sobre la visualización de los grupos de características compartidos en la consola, consulte [Búsqueda de grupos de características en el almacén de características](feature-store-search-feature-group-metadata.md).

En el siguiente ejemplo, la cuenta del consumidor de recursos utiliza la búsqueda mediante SageMaker IA para buscar los recursos que pueda detectar cuando `CrossAccountFilterOption` está configurada en: `"CrossAccount"`

```
from sagemaker.session import Session

sagemaker_session = Session(boto_session=boto_session)

sagemaker_session.search(
    resource="FeatureGroup",
    search_expression={
        "Filters": [
            {
                "Name": "FeatureGroupName",
                "Value": "MyFeatureGroup",
                "Operator": "Contains",
            }
        ],
        "Operator": "And",
    },
    sort_by="Name",
    sort_order="Ascending",
    next_token="token",
    max_results=50,
    CrossAccountFilterOption="CrossAccount"
)
```

Para obtener más información sobre la búsqueda mediante SageMaker IA y los parámetros de solicitud, consulta [Buscar](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Search.html) en la referencia de las SageMaker API de Amazon.

# Habilitar el acceso entre cuentas
<a name="feature-store-cross-account-access"></a>

Los permisos de acceso son de solo lectura, lectura-escritura y administrador. El nombre del permiso, la descripción y la lista de los APIs datos específicos disponibles para cada permiso se muestran a continuación:
+ Permiso de solo lectura (`AWSRAMPermissionSageMakerFeatureGroupReadOnly`): el privilegio de lectura permite a las cuentas consumidoras de recursos leer los registros de los grupos de características compartidos y ver los detalles y los metadatos. 
  + `DescribeFeatureGroup`: recupera detalles sobre un grupo de características y su configuración.
  + `DescribeFeatureMetadata`: muestra los metadatos de una característica dentro de un grupo de características.
  + `BatchGetRecord`: recupera un lote de registros de un grupo de características.
  + `GetRecord`: recupera un registro de un grupo de características.
+ Permiso de lectura-escritura (`AWSRAMPermissionSagemakerFeatureGroupReadWrite`): además del permiso de lectura, el privilegio de lectura y escritura permite a las cuentas consumidoras de recursos escribir registros en los grupos de características compartidos y eliminarlos de ellos.
  + `PutRecord`: escribe un registro en un grupo de características.
  + `DeleteRecord`: elimina un registro de un grupo de características.
  + APIs enumerados en `AWSRAMPermissionSageMakerFeatureGroupReadOnly`
+ Permiso de administrador (`AWSRAMPermissionSagemakerFeatureGroupAdmin`): además de los permisos de lectura y escritura, el privilegio de administrador permite a las cuentas consumidoras de recursos actualizar la descripción y los parámetros de las características de los grupos de características compartidos y actualizar la configuración de los grupos de características compartidos.
  + `DescribeFeatureMetadata`: muestra los metadatos de una característica dentro de un grupo de características.
  + `UpdateFeatureGroup`: actualiza la configuración de un grupo de características.
  + `UpdateFeatureMetadata`: actualiza la descripción y los parámetros de una característica del grupo de características.
  + APIs listado en `AWSRAMPermissionSagemakerFeatureGroupReadWrite`

En los siguientes temas, aprenderá a compartir grupos de características de almacenamiento en línea y sin conexión; hay diferencias entre ambos en lo que respecta al uso compartido.

**Topics**
+ [Comparta grupos de funciones en línea con AWS Resource Access Manager](feature-store-cross-account-access-online-store.md)
+ [Acceso al almacenamiento sin conexión entre cuentas](feature-store-cross-account-access-offline-store.md)

# Comparta grupos de funciones en línea con AWS Resource Access Manager
<a name="feature-store-cross-account-access-online-store"></a>

Con AWS Resource Access Manager (AWS RAM) puedes compartir de forma segura los grupos de funciones en línea de Amazon SageMaker Feature Store con otros Cuentas de AWS. Esto permite a los miembros del equipo buscar y acceder a grupos de características que abarcan varias cuentas, lo que promueve la coherencia de datos, agiliza la colaboración y reduce la duplicación de esfuerzos.

La cuenta del propietario del recurso puede compartir recursos con otras personas Cuentas de AWS mediante la concesión de permisos de uso AWS RAM. La cuenta del consumidor de recursos es aquella Cuenta de AWS con la que se comparte un recurso y está limitada por los permisos otorgados por la cuenta del propietario del recurso. Si es una organización, puede aprovechar esta opción AWS Organizations, con la que puede compartir recursos de forma individual Cuentas de AWS, con todas las cuentas de la organización o en una unidad organizativa (OU), sin tener que aplicar permisos a cada cuenta. Para ver vídeos instructivos y más información sobre AWS RAM los conceptos y las ventajas, consulte [¿Qué es? AWS Resource Access Manager](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) en la Guía del AWS RAM usuario.

Tenga en cuenta que hay un límite máximo flexible para las transacciones por segundo (TPS) por API y por Cuenta de AWS. El límite máximo de TPS se aplica a *todas* las transacciones de los recursos de la cuenta propietaria del recurso, por lo que las transacciones de las cuentas consumidoras de recursos también se tienen en cuenta para este límite máximo. Para obtener más información acerca de las cuotas de servicio y cómo solicitar un aumento de cuota, consulte [AWS service quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html).

En esta sección, se explica cómo la cuenta propietaria del recurso puede elegir grupos de características y conceder privilegios de acceso (solo lectura, lectura-escritura y administrador) a las cuentas consumidoras de recursos y, a continuación, cómo las cuentas consumidoras de recursos con privilegios de acceso pueden utilizar esos grupos de características. Los permisos de acceso no permiten que las cuentas consumidoras de recursos busquen y detecten grupos de características. Para permitir que las cuentas consumidoras de recursos busquen y detecten grupos de características de la cuenta propietaria del recurso, la cuenta propietaria del recurso debe conceder el permiso de detección a las cuentas consumidoras de recursos, de forma que dichas cuentas puedan detectar todos los grupos de características de la cuenta propietaria del recurso. Para obtener más información sobre cómo conceder permisos de detección, consulte [Habilitar la detección entre cuentas](feature-store-cross-account-discoverability.md).

Los siguientes temas muestran cómo compartir los recursos de la tienda en línea de Feature Store mediante la AWS RAM consola. Para obtener información sobre cómo compartir tus recursos y conceder permisos AWS mediante la AWS RAM consola o AWS Command Line Interface (AWS CLI), consulta Cómo [compartir tus AWS recursos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html).

**Topics**
+ [Compartir entidades del grupo de características](feature-store-cross-account-access-online-store-share-feature-group.md)
+ [Uso de los recursos compartidos del almacenamiento en línea con permisos de acceso](feature-store-cross-account-access-online-store-use.md)

# Compartir entidades del grupo de características
<a name="feature-store-cross-account-access-online-store-share-feature-group"></a>

Como cuenta de propietario del recurso, puedes usar el tipo de recurso de grupo de características de Amazon SageMaker Feature Store para compartir entidades de grupos de características, creando un recurso compartido en AWS Resource Access Manager (AWS RAM). 

Utilice las siguientes instrucciones junto con las instrucciones [para compartir sus AWS recursos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create) de la Guía del AWS RAM usuario.

Al compartir el tipo de recurso del grupo de funciones mediante la AWS RAM consola, debe realizar las siguientes elecciones.

1. **Especifique los detalles del recurso compartido**: 
   + Tipo de recurso: elige **grupos de funciones de SageMaker IA**.
   + ARN: elija el ARN del grupo de características con el formato: `arn:aws:sagemaker:us-east-1:111122223333:feature-group/your-feature-group-name`.

     `us-east-1` es la región del recurso, `111122223333` es el ID de la cuenta propietaria del recurso y `your-feature-group-name` es el grupo de características que comparte.
   + ID de recurso: elija el grupo de características, `your-feature-group-name`, al que desea conceder permisos de acceso.

1. **Asocie los permisos administrados**: 
   + Permiso administrado: elija el permiso de acceso. Para obtener más información acerca de los permisos de acceso, consulte [Habilitar el acceso entre cuentas](feature-store-cross-account-access.md).

1. **Conceda acceso a las entidades principales**:
   + Elija el tipo de entidad principal (Cuenta de AWS, organización, unidad organizativa, rol de IAM o usuario de IAM) e introduzca el ID o el ARN correspondientes.

1. **Revise y cree**: 
   + Revise y, a continuación, elija **Crear recurso compartido**.

La concesión de un permiso de acceso no otorga a las cuentas consumidoras de recursos el permiso de detección, por lo que las cuentas consumidoras de recursos con permisos de acceso no pueden buscar ni detectar esos grupos de características. Para permitir que las cuentas consumidoras de recursos busquen y detecten grupos de características de la cuenta propietaria del recurso, la cuenta propietaria del recurso debe conceder el permiso de detección a las cuentas consumidoras de recursos, de forma que dichas cuentas puedan detectar *todos* los grupos de características de la cuenta propietaria del recurso. Para obtener más información sobre cómo conceder permisos de detección, consulte [Habilitar la detección entre cuentas](feature-store-cross-account-discoverability.md).

Si las cuentas consumidoras de recursos solo reciben permisos de acceso, las entidades del grupo de características se pueden ver en AWS RAM. Para ver los recursos disponibles AWS RAM, consulta el [artículo Acceder a AWS los recursos compartidos contigo](https://docs.aws.amazon.com/ram/latest/userguide/working-with-shared.html) en la Guía del AWS RAM usuario.

Las asociaciones del recurso compartido y la entidad principal, o la cuenta del recurso compartido, pueden tardar unos minutos en completarse. Una vez establecidas la cuota de recursos y las asociaciones de entidades principales, las cuentas consumidoras de recursos especificadas reciben una invitación para unirse al recurso compartido. Las cuentas de los consumidores de recursos pueden ver y aceptar las invitaciones abriendo la página [Compartido conmigo: recursos compartidos](https://console.aws.amazon.com/ram/home#SharedResourceShares) en la AWS RAM consola. No se envían invitaciones en los siguientes casos:
+ Si formas parte de una organización AWS Organizations y la opción de compartir en tu organización está habilitada, los directores de la organización tendrán acceso automáticamente a los recursos compartidos sin necesidad de invitaciones.
+ Si compartes con el Cuenta de AWS propietario del recurso, los directores de esa cuenta tendrán acceso automáticamente a los recursos compartidos sin necesidad de invitaciones.

Para obtener más información sobre la aceptación y el uso de un recurso compartido en AWS RAM, consulte [Uso de AWS recursos compartidos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-shared.html) en la Guía del AWS RAM usuario.

## Comparta los grupos de funciones de la tienda en línea mediante AWS SDK para Python (Boto3)
<a name="feature-store-cross-account-access-online-store-python-sdk-example"></a>

Puede usar el formulario AWS SDK para Python (Boto3) AWS RAM APIs para crear un recurso compartido. El siguiente código es un ejemplo de un ID de cuenta propietaria de un recurso `111122223333` que crea un recurso compartido denominado `'test-cross-account-fg'` y comparte el grupo de características denominado `'my-feature-group'` con el ID de cuenta consumidora del recurso `444455556666` a la vez que otorga el permiso `AWSRAMPermissionSageMakerFeatureGroupReadOnly`. Para obtener más información acerca de los permisos de acceso, consulte [Habilitar el acceso entre cuentas](feature-store-cross-account-access.md). Para usar el SDK de Python AWS RAM APIs, debe adjuntar una política administrada de acceso AWS RAM completo con la función de ejecución. Consulta la API [create\$1resource\$1share para obtener](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ram/client/create_resource_share.html) AWS RAM más información.

```
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"]
)
```

Las entidades principales son actores de un sistema de seguridad. En una política basada en recursos, las entidades principales permitidas son los usuarios de IAM, los roles de IAM, la cuenta raíz u otro Servicio de AWS.

# Uso de los recursos compartidos del almacenamiento en línea con permisos de acceso
<a name="feature-store-cross-account-access-online-store-use"></a>

La cuenta propietaria del recurso debe conceder permisos a las cuentas consumidoras de recursos para que puedan ser detectadas o tengan privilegios de solo lectura, lectura-escritura o administrador con un recurso compartido. En las siguientes secciones, se proporcionan instrucciones sobre cómo aceptar una invitación para acceder a recursos compartidos y se proporcionan ejemplos que muestran cómo ver e interactuar con grupos de características compartidos.

**Aceptar una invitación para acceder a recursos compartidos con AWS RAM**

Como cuenta consumidora del recurso, recibirá una invitación para unirse a un recurso compartido una vez que la cuenta propietaria del recurso le haya concedido permiso. Para aceptar la invitación a cualquier recurso compartido, abre la página [Compartidos conmigo: recursos compartidos](https://console.aws.amazon.com/ram/home#SharedResourceShares) en la AWS RAM consola para ver las invitaciones y responderlas. No se envían invitaciones en los siguientes casos:
+ Si formas parte de una organización AWS Organizations y la opción de compartir en tu organización está habilitada, los directores de la organización tendrán acceso automáticamente a los recursos compartidos sin necesidad de invitaciones.
+ Si compartes con el Cuenta de AWS propietario del recurso, los directores de esa cuenta tendrán acceso automáticamente a los recursos compartidos sin necesidad de invitaciones.

Para obtener más información sobre la aceptación y el uso de un recurso compartido en AWS RAM, consulte [Uso de AWS recursos compartidos](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-shared.html) en la Guía del AWS RAM usuario.

## Vea los recursos compartidos en la AWS RAM consola
<a name="feature-store-cross-account-access-online-store-use-view"></a>

La concesión de permisos de acceso no otorga a las cuentas consumidoras de recursos el permiso de detección, por lo que las cuentas consumidoras de recursos con permisos de acceso no pueden buscar ni detectar esos grupos de características. Para permitir que las cuentas consumidoras de recursos busquen y detecten grupos de características de la cuenta propietaria del recurso, la cuenta propietaria del recurso debe conceder el permiso de detección a las cuentas consumidoras de recursos, de forma que dichas cuentas puedan detectar todos los grupos de características de la cuenta propietaria del recurso. Para obtener más información sobre cómo conceder permisos de detección, consulte [Habilitar la detección entre cuentas](feature-store-cross-account-discoverability.md).

Para ver los recursos compartidos en la AWS RAM consola, abre la página [Compartidos conmigo: recursos compartidos](https://console.aws.amazon.com/ram/home#SharedResourceShares) en la AWS RAM consola. 

## Ejemplo de lectura y escritura de acciones con grupos de características compartidos
<a name="feature-store-cross-account-access-online-store-use-read-write-actions"></a>

Una vez que la cuenta propietaria del recurso haya concedido a la cuenta consumidora del recurso los permisos adecuados, podrá realizar acciones en los recursos compartidos mediante el SDK del almacén de características. Para ello, proporcione el ARN del recurso como `FeatureGroupName`. Para obtener el ARN del grupo de funciones, puede usar la 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)función o la interfaz de usuario de la consola. Para obtener más información sobre el uso de la interfaz de usuario de la consola para ver los detalles del grupo de características, consulte [Visualización de los detalles del grupo de características desde la consola](feature-store-use-with-studio.md#feature-store-view-feature-group-detail-studio).

En los ejemplos siguientes se utiliza `PutRecord` y `GetRecord` con una entidad del grupo de características compartido. Consulte la sintaxis de solicitud y respuesta en la AWS SDK para Python (Boto3) documentación para ver [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)y [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 obtener más información sobre cómo conceder permisos a entidades del grupo de características, consulte [Compartir entidades del grupo de características](feature-store-cross-account-access-online-store-share-feature-group.md).

# Acceso al almacenamiento sin conexión entre cuentas
<a name="feature-store-cross-account-access-offline-store"></a>

 Amazon SageMaker Feature Store permite a los usuarios crear un grupo de características en una cuenta (cuenta A) y configurarlo con una tienda offline utilizando un bucket de Amazon S3 en otra cuenta (cuenta B). Puede configurar esto según los pasos de la siguiente sección.

**Topics**
+ [Paso 1: Configurar el rol de acceso al almacenamiento sin conexión en la cuenta A](#feature-store-setup-step1)
+ [Paso 2: Configurar un bucket de Amazon S3 para el almacenamiento sin conexión en la cuenta B](#feature-store-setup-step2)
+ [Paso 3: Configura una clave de AWS KMS cifrado para una tienda offline en la cuenta A](#feature-store-setup-step3)
+ [Paso 4: Crear un grupo de características en la cuenta A](#feature-store-setup-step4)

## Paso 1: Configurar el rol de acceso al almacenamiento sin conexión en la cuenta A
<a name="feature-store-setup-step1"></a>

En primer lugar, configura un rol para que Amazon SageMaker Feature Store escriba los datos en la tienda offline. La forma más sencilla de lograrlo es crear un nuevo rol con la política `AmazonSageMakerFeatureStoreAccess` o usar un rol existente que ya tenga asociada la política `AmazonSageMakerFeatureStoreAccess`. Este documento se refiere a esta 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*"
            ]
        }
    ]
}
```

------

El fragmento de código anterior muestra la política `AmazonSageMakerFeatureStoreAccess`. De forma predeterminada, la sección `Resource` de la política se limita a los buckets de S3 con nombres que contienen `SageMaker`, `Sagemaker` o `sagemaker`. Esto significa que el bucket Amazon S3 del almacenamiento sin conexión que se utilice debe seguir esta convención de nomenclatura. Si este no es su caso, o si desea delimitar aún más el recurso, puede copiar y pegar la política en su política de bucket de Amazon S3 en la consola, personalizar la sección `Resource` para que sea `arn:aws:s3:::your-offline-store-bucket-name` y, a continuación, asociarla al rol. 

Además, este rol debe tener AWS KMS permisos adjuntos. Como mínimo, se requiere el permiso `kms:GenerateDataKey` para poder escribir en el almacenamiento sin conexión con la clave administrada por el cliente. Consulta el paso 3 para saber por qué se necesita una clave administrada por el cliente en un escenario entre cuentas y cómo configurarla. El siguiente ejemplo muestra una política insertada: 

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

****  

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

------

La sección `Resource` de esta política se aplica a cualquier clave de la cuenta A. Para delimitar esto aún más, después de configurar la clave de KMS del almacenamiento sin conexión en el paso 3, vuelva a esta política y sustitúyala por el ARN de la clave.

## Paso 2: Configurar un bucket de Amazon S3 para el almacenamiento sin conexión en la cuenta B
<a name="feature-store-setup-step2"></a>

Cree un bucket de Amazon S3 en la cuenta B. Si utiliza la política `AmazonSageMakerFeatureStoreAccess` predeterminada, el nombre del bucket debe incluir `SageMaker`, `Sagemaker` o `sagemaker`. Edite la política de bucket como se muestra en el siguiente ejemplo para permitir que la cuenta A lea y escriba objetos.

En este documento se hace referencia al siguiente ejemplo de política de bucket 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"
            ]
        }
    ]
}
```

------

En la política anterior, la principal es `Account-A-Offline-Feature-Store-Role-ARN` la función creada en la cuenta A en el paso 1 y proporcionada a Amazon SageMaker Feature Store para que escriba en la tienda offline. Puede proporcionar varios roles de ARN en `Principal`.

## Paso 3: Configura una clave de AWS KMS cifrado para una tienda offline en la cuenta A
<a name="feature-store-setup-step3"></a>

Amazon SageMaker Feature Store garantiza que el cifrado del lado del servidor esté siempre activado para los objetos de Amazon S3 de la tienda offline. En los casos de uso entre cuentas, debe proporcionar una clave administrada por el cliente para controlar quién puede escribir en el almacenamiento sin conexión (en este caso, `Account-A-Offline-Feature-Store-Role-ARN` de la cuenta A) y quién puede leer desde el almacenamiento sin conexión (en este caso, las identidades de la cuenta B). 

En este documento se hace referencia al siguiente ejemplo de política de claves 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": "*"
        }
    ]
}
```

------

## Paso 4: Crear un grupo de características en la cuenta A
<a name="feature-store-setup-step4"></a>

A continuación, cree el grupo de características en la cuenta A, con un bucket de Amazon S3 de almacenamiento sin conexión en la cuenta B. Para ello, proporcione los siguientes parámetros para `RoleArn`, `OfflineStoreConfig.S3StorageConfig.KmsKeyId` y `OfflineStoreConfig.S3StorageConfig.S3Uri`, respectivamente: 
+ Proporcione `Account-A-Offline-Feature-Store-Role-ARN` como `RoleArn`.
+ Proporcione `Account-A-Offline-Feature-Store-KMS-Key-ARN` para `OfflineStoreConfig.S3StorageConfig.KmsKeyId`.
+ Proporcione `Account-B-Offline-Feature-Store-Bucket` para `OfflineStoreConfig.S3StorageConfig.S3Uri`.