

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.

# Aplicaciones web Transfer Family
<a name="web-app"></a>

Puede crear aplicaciones web para habilitar una interfaz sencilla para transferir datos desde y hacia Amazon Simple Storage Service (S3) a través de un navegador web. Esto no requiere que cree ni aprovisione AWS Transfer Family servidores.

Antes de la introducción de las aplicaciones web Transfer Family, los usuarios finales necesitaban usar una solución cliente, personalizada o de terceros para acceder a sus datos en Amazon S3. Esto se debía a los estrictos requisitos de seguridad para los clientes y socios, y a que las aplicaciones de los clientes eran difíciles de operar para los usuarios sin conocimientos técnicos.

Con el lanzamiento de las aplicaciones web, ahora puede ampliar un portal de marca, seguro y de alta disponibilidad para que sus usuarios finales naveguen, carguen y descarguen datos en Amazon S3. Las aplicaciones web se integran de forma nativa con AWS IAM Identity Center Amazon S3 Access Grants. Esto significa que solo los usuarios autenticados pueden ver los datos a los que están autorizados a acceder. Las aplicaciones web se crean con [Storage Browser para Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-browser.html) y ofrecen las mismas funcionalidades para el usuario final en una oferta totalmente gestionada sin tener que escribir código ni alojar su propia aplicación.

Para obtener más información sobre las demás aplicaciones web Servicios de AWS que utilizas con las aplicaciones web de Transfer Family, consulta la siguiente documentación:
+ [Administración del acceso con S3 Access Grants en la guía del usuario de Amazon Simple Storage Service](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants.html)
+ [AWS IAM Identity Center Guía del usuario](https://docs.aws.amazon.com/singlesignon/latest/userguide/)
+ [Taller sobre las subvenciones de acceso a Amazon S3](https://catalog.us-east-1.prod.workshops.aws/workshops/77b0af63-6ad2-4c94-bfc0-270eb9358c7a/en-US)
+ [Anunciamos aplicaciones AWS Transfer Family web para transferencias de archivos de Amazon S3 totalmente gestionadas](https://aws.amazon.com/blogs/aws/announcing-aws-transfer-family-web-apps-for-fully-managed-amazon-s3-file-transfers/)

Los siguientes recursos están disponibles para ayudarte a empezar a utilizar las aplicaciones web Transfer Family.
+ La guía del usuario ofrece un step-by-step tutorial detallado sobre cómo configurar una aplicación web Transfer Family aquí:[Tutorial: Cómo configurar una aplicación web básica de Transfer Family](web-app-tutorial.md).
+ El **Centro de recursos de AWS introducción** ofrece un tutorial aquí: [Cómo empezar con la aplicación AWS Transfer Family web](https://aws.amazon.com/getting-started/hands-on/set-up-an-aws-transfer-family-web-app/).
+ El siguiente vídeo proporciona un tutorial para empezar a utilizar las aplicaciones web Transfer Family.  
[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/Ie9M0qBGrCE/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/Ie9M0qBGrCE)

## Regiones de AWS para aplicaciones web Transfer Family
<a name="webapp-regions"></a>

AWS Transfer Family las aplicaciones web están disponibles en todas las regiones compatibles con Transfer Family, tal como se indica en los [puntos finales del AWS Transfer Family servicio](https://docs.aws.amazon.com//general/latest/gr/transfer-service.html#transfer-region), excepto en México (Central).

Los puntos finales de VPC para aplicaciones web son compatibles en todos los Regiones de AWS lugares donde estén disponibles las aplicaciones web.

## Compatibilidad de navegadores para aplicaciones AWS Transfer Family web
<a name="webapp-browsers"></a>

Las aplicaciones web Transfer Family son compatibles con los siguientes navegadores.


| Navegador | Versión | Compatibilidad | 
| --- | --- | --- | 
| Microsoft Edge | Últimas 3 versiones | Compatible | 
| Mozilla Firefox | Últimas 3 versiones | Compatible | 
| Google Chrome | Últimas 3 versiones | Compatible | 
| Apple Safari | Últimas 3 versiones | Compatible | 

## Cómo crear una aplicación web Transfer Family
<a name="webapp-process"></a>

El siguiente diagrama ilustra la arquitectura de la aplicación web Transfer Family.

![\[Diagrama de arquitectura que muestra las Servicios de AWS que interactúan con las aplicaciones web Transfer Family.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-architecture.png)


Según el diagrama, puede ver que las aplicaciones web de Transfer Family interactúan con lo siguiente Servicios de AWS:
+ Amazon S3 para almacenamiento y Amazon S3 Access Grants para adquirir credenciales de sesión.
+ AWS IAM Identity Center como proveedor de identidad federado.
+ Amazon CloudFront si configuras una URL personalizada para tu aplicación web.

Tenga en cuenta las siguientes limitaciones cuando utilice aplicaciones web.
+ Número máximo de resultados de búsqueda por consulta: 10 000
+ Los buckets de Amazon S3 que utiliza la aplicación web Transfer Family deben estar en la misma cuenta que la propia aplicación web. Actualmente, no se admiten los depósitos entre cuentas.
+ Amplitud máxima de búsqueda por consulta: 10 000 archivos buscados
+ Tamaño máximo de carga por archivo: 160 GB (149 GiB)
+ Tamaño máximo de archivo para copiar: 5,36 GB (5 GiB)
+ No se admiten nombres de carpetas que comiencen o terminen con puntos (.)

**Requisitos previos**  
*En AWS Identity and Access Management, configure las funciones necesarias.* Pegue los bloques de código que le proporcionamos en las instrucciones. Para obtener información sobre la configuración de las funciones necesarias, consulte[Configurar las funciones de IAM para las aplicaciones web Transfer Family](webapp-roles.md).
+ Cree un rol de portador de identidad.
+ Cree un rol de IAM para que lo utilice S3 Access Grants. S3 Access Grants asume esta función de IAM para vender credenciales temporales al concesionario para la ubicación registrada de Amazon S3.

**Proceso para crear una aplicación web Transfer Family**  
Para crear su aplicación web y poner en funcionamiento a sus usuarios finales, debe realizar las siguientes tareas:

1. *Configure el Centro de identidades de IAM para que actúe como su proveedor de identidades federado*. Realice las siguientes tareas en el Centro de identidades de IAM. Para obtener más información sobre la configuración del Centro de identidades de IAM, consulte. [Configura tu proveedor de identidad para las aplicaciones web Transfer Family](webapp-identity-center.md)

   1. Cree una instancia del IAM Identity Center, si aún no tiene una.

   1. Determine su fuente de identidad. Puede ser el directorio predeterminado del centro de identidad de IAM o un proveedor externo (por ejemplo, Okta).

   1. Cree o identifique los usuarios o grupos que utilizarán su aplicación web. 

   1. Si utiliza el directorio del Centro de identidades de IAM como fuente de identidad, anote el usuario o grupo IDs que ha creado. Los necesitará más adelante cuando cree una concesión de acceso mediante S3 Access Grants.

1. *En Amazon S3, configure Amazon S3 Access Grants.* Para obtener más información sobre Concesiones de acceso a S3, consulte [Configuración de las concesiones de acceso a Amazon S3 para las aplicaciones web Transfer Family](webapp-access-grant.md).
   + Cree una instancia de S3 Access Grants si aún no tiene una Región de AWS.
   + Registre su ubicación mediante el rol de IAM.
   + Cree la concesión de acceso.

1. *En Transfer Family, lleve a cabo las siguientes tareas.*

   1. Cree la aplicación web Transfer Family. Para obtener más información sobre cómo crear la aplicación web Transfer Family, consulte[Configurar una aplicación web Transfer Family](webapp-configure.md).
**importante**  
Configure el uso compartido de recursos entre orígenes (CORS) para todos los buckets de Amazon S3 que utilice su aplicación web. Para obtener información sobre la configuración de CORS, consulte. [Configure el intercambio de recursos entre orígenes (CORS) para su depósito](access-grant-cors.md)

   1. Asigne usuarios o grupos a la aplicación web. Para obtener más información sobre cómo asignar usuarios y grupos, consulte[Asigne o añada usuarios o grupos a una aplicación web Transfer Family](webapp-add-users.md).

   1. (Opcional) Actualice el punto de acceso de su aplicación web con una URL personalizada. Para obtener información sobre cómo crear una URL personalizada, consulte[Actualice su terminal de acceso con una URL personalizada](webapp-customize.md).

   1. Proporcione a sus usuarios finales la URL del punto de acceso para que puedan iniciar sesión e interactuar con su aplicación web.

# Configura tu proveedor de identidad para las aplicaciones web Transfer Family
<a name="webapp-identity-center"></a>

En la siguiente sección, se describe cómo configurar su proveedor de identidad.

Para empezar, debe tener una fuente de identidad. Puede utilizar un directorio del centro de identidad de IAM o un proveedor de identidad externo. AWS Directory Service for Microsoft Active Directory Transfer Family utiliza IAM Identity Center como proveedor de identidad federado, que es un sistema que almacena las credenciales de los usuarios y autentica a los usuarios de varias organizaciones.

Si no utiliza un directorio del centro de identidad de IAM como fuente de identidad, consulte los siguientes temas:
+ [Gestione un proveedor de identidad externo](https://docs.aws.amazon.com//singlesignon/latest/userguide/manage-your-identity-source-idp.html)
+ [Conectarse a un directorio de Microsoft AD](https://docs.aws.amazon.com//singlesignon/latest/userguide/manage-your-identity-source-ad.html)
+ [Instancias de organización y cuenta del IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/identity-center-instances.html)
+ [Tutoriales sobre las fuentes de identidad del IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/tutorials.html)

**nota**  
Solo puede tener una fuente de identidad en el Centro de identidades de IAM, por instancia, por instancia. Región de AWS Para obtener más información, consulte los [requisitos previos y las consideraciones del IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/identity-center-prerequisites.html).

Si piensa utilizar el directorio del Centro de Identidad de IAM como fuente de identidad y desea realizar una configuración rápida, puede omitir este tema e ir [Crea una aplicación web de Transfer Family](webapp-configure.md#web-app-create) a Crear una instancia del Centro de Identidad de IAM desde el asistente.

**Para configurarlo AWS IAM Identity Center para su uso con las aplicaciones web Transfer Family**

1. Inicia sesión en Consola de administración de AWS y abre la AWS IAM Identity Center consola en [https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/).

1. Puede crear y utilizar una instancia de cuenta o una instancia de organización de AWS IAM Identity Center.
   + Para obtener más información sobre las instancias de cuentas, consulte [Crear una instancia de cuenta de AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/create-account-instance.html). Con una instancia de cuenta de IAM Identity Center, puede implementar aplicaciones AWS gestionadas compatibles y aplicaciones gestionadas por clientes basadas en OpenID Connect (OIDC). Las instancias de cuentas admiten despliegues aislados de aplicaciones en una sola Cuenta de AWS, aprovechando las funciones del portal de acceso e identidad de los empleados de IAM Identity Center.
   + Para obtener más información sobre las instancias de organización, consulte Instancias de [organización del IAM](https://docs.aws.amazon.com/singlesignon/latest/userguide/organization-instances-identity-center.html) Identity Center. Puede gestionar de forma centralizada el acceso de los usuarios y grupos con una única instancia de organización.

1. En la página de **configuración** del centro de identidad de IAM, anote el ARN de la instancia. Necesitará este valor cuando cree una instancia de **Amazon S3 Access Grant**.  
![\[Captura de pantalla de la consola AWS IAM Identity Center que muestra la página de configuración con el ARN de la instancia rodeado con un círculo.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-identity-center.png)

1. Cree uno o más usuarios y, opcionalmente, grupos para usarlos con su aplicación web Transfer Family. Si utilizas un directorio del Centro de Identidad de IAM como proveedor de identidad, también puedes añadir usuarios directamente desde la propia aplicación web. Para obtener más información, consulte [Asigne o añada usuarios o grupos a una aplicación web Transfer Family](webapp-add-users.md).

# Configurar las funciones de IAM para las aplicaciones web Transfer Family
<a name="webapp-roles"></a>

Necesitará dos funciones: una para usarla como función portadora de identidad para su aplicación web y otra para configurar una concesión de acceso. Un rol de portador de identidad es un rol que incluye la identidad de un usuario autenticado en sus sesiones. Se utiliza para solicitar el acceso a los datos a S3 Access Grants en nombre del usuario.

**nota**  
Puede omitir el procedimiento de creación de un rol de portador de identidad. Para obtener información sobre cómo hacer que el servicio Transfer Family cree el rol de portador de identidad, consulte[Crea una aplicación web de Transfer Family](webapp-configure.md#web-app-create).  
Puede omitir el procedimiento de creación de un rol de concesión de acceso. En el procedimiento para crear una concesión de acceso, en el paso en el que se registra una ubicación de S3, seleccione **Crear un nuevo rol**. 

**Cree un rol de portador de identidad**

1. Inicie sesión en la consola de IAM Consola de administración de AWS y ábrala en. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. Elija **Funciones** y, a continuación, **Crear función**.

1. Elija **Política de confianza personalizada** y, a continuación, pegue el siguiente código.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service":"transfer.amazonaws.com"
               },
               "Action": [
                   "sts:AssumeRole",
                   "sts:SetContext"
               ]
           }
       ]
   }
   ```

1. Selecciona **Siguiente** y, a continuación, omite **Añadir permisos** y vuelve a seleccionar **Siguiente**.

1. Introduce un nombre, por ejemplo`web-app-identity-bearer`.

1. Elija **Crear rol** para crear el rol de portador de identidad.

1. Elija el rol que acaba de crear de la lista y, a continuación, en el panel de **políticas de permisos**, elija **Añadir permisos** > **Crear política integrada.**

1. En el **editor de políticas**, selecciona **JSON** y pega el siguiente bloque de código.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "s3:GetDataAccess",
                   "s3:ListCallerAccessGrants",
                   "s3:ListAccessGrantsInstances"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

1. Para el nombre de la política, introduzca y`AllowS3AccessGrants`, a continuación, seleccione **Crear política**.

A continuación, debe crear la función que S3 Access Grants asume para vender las credenciales temporales al concesionario.

**nota**  
Si permite que el servicio cree el rol de portador de identidad para usted, ese rol establece una protección de adjunto confusa. Por lo tanto, su código es diferente al que se muestra aquí.

**Cree un rol de concesión de acceso**

1. Inicie sesión en la consola de IAM Consola de administración de AWS y ábrala en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Elija **Funciones** y, a continuación, **Crear función**. Este rol debe tener permiso para acceder a sus datos de S3 en Región de AWS.

1. Elija **Política de confianza personalizada** y, a continuación, pegue el siguiente código.

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "access-grants.s3.amazonaws.com"
               },
               "Action": [
                   "sts:AssumeRole",
                   "sts:SetContext"
               ]
           }
       ]
   }
   ```

1. Selecciona **Siguiente** y agrega una política mínima como se describe en [Registrar una ubicación](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-location-register.html). Si bien no es recomendable, puede añadir la política FullAccess gestionada de **AmazonS3**, que puede resultar demasiado permisiva para sus necesidades.

1. Seleccione **Siguiente** e introduzca un nombre (por ejemplo). `access-grants-location`

1. Elija **Crear rol** para crear el rol.

**nota**  
Si permites que el servicio cree la función de concesión de acceso por ti, esa función establece una confusa protección de diputado. Por lo tanto, su código es diferente al que se muestra aquí.

# Configurar una aplicación web Transfer Family
<a name="webapp-configure"></a>

En esta sección se describen los procedimientos para crear una aplicación web Transfer Family. Para asignar usuarios y grupos que puedan utilizarla, consulte[Asigne o añada usuarios o grupos a una aplicación web Transfer Family](webapp-add-users.md).

**nota**  
Repita estos procedimientos para añadir aplicaciones web adicionales. Puede reutilizar las funciones de IAM que creó anteriormente. Asegúrese de añadir los puntos de acceso a las nuevas aplicaciones web a la política de intercambio de recursos entre orígenes (CORS) de cada grupo.

## Crea una aplicación web de Transfer Family
<a name="web-app-create"></a>

**nota**  
Si no utiliza el directorio del Centro de Identidad de IAM como proveedor de identidad, no intente crear una aplicación web hasta que no haya configurado el Centro de Identidad de IAM y haya configurado un proveedor de identidades externo, tal y como se describe en. [Configura tu proveedor de identidad para las aplicaciones web Transfer Family](webapp-identity-center.md)

Complete los siguientes pasos para crear una aplicación web Transfer Family.

**Para crear una aplicación web Transfer Family**

1. Inicia sesión en Consola de administración de AWS y abre la AWS Transfer Family consola en [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. En el panel de navegación izquierdo, selecciona **Aplicaciones web**.

1. Seleccione **Crear aplicación web**.

   Para el acceso de autenticación, el panel se rellena de la siguiente manera.
   + Si ya ha creado una organización o una instancia de cuenta en AWS IAM Identity Center, verá este mensaje: **Su AWS Transfer Family aplicación está conectada a una instancia de cuenta de IAM Identity Center**.
   + Si ya tiene una instancia de cuenta y es miembro de una instancia de organización, tiene la opción de elegir la instancia a la que desea conectarse.
   + Si aún no tienes una instancia de cuenta o eres miembro de una instancia de organización, se te presentan las opciones para crear una instancia de cuenta.

1. En el **tipo de punto de conexión**, seleccione el tipo de punto de conexión de **acceso público**. Para ver un punto de conexión **alojado en una VPC**, consulte [Creación de una aplicación web de Transfer Family en una VPC](create-webapp-in-vpc.md).

1. En el panel **de tipos de permisos**, puedes usar un rol creado anteriormente o hacer que el servicio cree uno por ti.
   + Si ya ha creado un rol portador de identidad, elija **Usar un rol existente** y elija el suyo en el menú **Seleccione un rol existente**.
   + Para que el servicio cree un rol para usted, elija **Crear y usar un nuevo rol de servicio**.

1. En el panel de **unidades de aplicaciones web**, elija un valor. Una unidad de aplicación web permite la actividad de la aplicación web desde hasta 250 sesiones únicas. Al crear una aplicación web, aprovisiona el número de unidades que necesita en función de los volúmenes máximos de carga de trabajo esperados. Cambiar las unidades de la aplicación web repercute en la facturación. Para obtener más información acerca de los precios, consulte [AWS Transfer Family Precios](https://aws.amazon.com/aws-transfer-family/pricing).

1. Si utiliza Transfer Family en un dispositivo AWS GovCloud (US) Region, puede seleccionar la casilla de verificación del **punto final con FIPS activado** en el panel **FIPS** activado. Para todas las demás Regiones de AWS, esta opción no está disponible.

1. (Opcional) Agregue una etiqueta que le ayude a organizar sus aplicaciones web. Le sugerimos que añada una etiqueta con **Nombre** como clave y un nombre descriptivo como valor.

1. Elija **Siguiente**. En esta pantalla, si lo desea, puede proporcionar un título para su aplicación web. Si no proporciona un título, se proporciona el título predeterminado de **Transfer Web App**. También puedes cargar archivos de imagen para tu logotipo y favicon.

1. Selecciona **Siguiente** y, a continuación, selecciona **Crear aplicación web**.

![\[Pantalla que muestra el panel de aplicaciones web, así como el elemento del menú para seleccionarlo en el panel de navegación izquierdo.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-transfer-dashboard.png)


**nota**  
Asegúrese de configurar una política de intercambio de recursos entre orígenes (CORS) para todos los depósitos a los que se accede desde el punto final de la aplicación web.

# Creación de una aplicación web de Transfer Family en una VPC
<a name="create-webapp-in-vpc"></a>

En esta sección se describen los procedimientos para crear una aplicación web Transfer Family en una VPC. Puede alojar el punto final de su aplicación web en una nube privada virtual (VPC) para transferir datos hacia y desde un bucket de Amazon S3 sin tener que recurrir a la Internet pública. Para asignar usuarios y grupos que puedan usar su aplicación web, consulte[Asigne o añada usuarios o grupos a una aplicación web Transfer Family](webapp-add-users.md).

**nota**  
Para garantizar un flujo de end-to-end datos privado al utilizar un punto final de VPC de una aplicación web Transfer Family, debe implementar tres componentes adicionales. En primer lugar, configure un PrivateLink punto de conexión para las operaciones de la API de control de Amazon S3, que es necesario para las llamadas a la API Amazon S3 Access Grants. En segundo lugar, configure un punto de enlace para el acceso a los datos de PrivateLink Amazon S3 mediante un punto de enlace de Amazon S3 Gateway (para el tráfico desde su VPC) o un punto de enlace de la interfaz de Amazon S3 (para el tráfico de redes locales a través de VPN o Direct Connect). En tercer lugar, bloquee el acceso al bucket de Amazon S3 actualizando las políticas del bucket para permitir únicamente el tráfico desde estos puntos de enlace de VPC. Esta combinación garantiza que todas las transferencias de datos permanezcan dentro de su infraestructura de red privada y nunca pasen por la Internet pública.

## Crea una aplicación web de Transfer Family
<a name="webapp-vpce-create"></a>

**Requisitos previos**
+ AWS IAM Identity Center configurarla con el proveedor de identidad configurado. Consulte [Configura tu proveedor de identidad para las aplicaciones web Transfer Family](webapp-identity-center.md).
+ Configuración de componentes de red y VPC. Consulte [Crear una VPC](https://docs.aws.amazon.com/vpc/latest/userguide/create-vpc.html#create-vpc-and-other-resources).
+ Punto final de API configurado para las operaciones de control de Amazon S3. Consulte [Acceder a los puntos de enlace de la interfaz de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#s3-creating-vpc).
+ Configuración de puntos de enlace de VPC para Amazon S3 (puerta de enlace o interfaz). Consulte [Tipos de puntos de enlace de VPC para Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#types-of-vpc-endpoints-for-s3). Si utiliza un punto final de interfaz, debe habilitar el DNS privado. Para ver un ejemplo, consulte [Introducción al soporte de DNS privado para Amazon S3 con AWS PrivateLink](https://aws.amazon.com/blogs/storage/introducing-private-dns-support-for-amazon-s3-with-aws-privatelink/).

**nota**  
AWS IAM Identity Center no admite puntos finales de VPC; todas las solicitudes de autenticación transitan por la Internet pública. Además, las aplicaciones web de Transfer Family requieren acceso a Internet para cargar contenido estático (como JavaScript archivos CSS y HTML). Los requisitos para el acceso público a Internet son independientes del acceso a los datos. Su punto de enlace de VPC garantiza que las conexiones se enruten a través de su infraestructura de VPC.

**Para crear una aplicación web Transfer Family**

1. Inicia sesión en Consola de administración de AWS y abre la AWS Transfer Family consola en [https://console.aws.amazon.com/transfer/](https://console.aws.amazon.com/transfer/).

1. En el panel de navegación izquierdo, selecciona **Aplicaciones web**.

1. Seleccione **Crear aplicación web**. Para el acceso de autenticación, el panel se rellena de la siguiente manera.
   + Si ya ha creado una organización o una instancia de cuenta en AWS IAM Identity Center, verá este mensaje: **Su AWS Transfer Family aplicación está conectada a una instancia de cuenta de IAM Identity Center**.
   + Si ya tiene una instancia de cuenta y es miembro de una instancia de organización, tiene la opción de elegir la instancia a la que desea conectarse.
   + Si aún no tienes una instancia de cuenta o eres miembro de una instancia de organización, se te presentan las opciones para crear una instancia de cuenta.

1. En la sección de **configuración de Endpoint**, elige cómo accederán los usuarios a tu aplicación web:
   + **Accesible públicamente**: se puede acceder al punto final de su aplicación web de forma pública a través de HTTPS. Esta opción no requiere ninguna configuración de VPC, por lo que es fácil de configurar y adecuada para aplicaciones destinadas a un uso público amplio.
   + **Alojado en VPC**: el punto final de su aplicación web está alojado en su Nube Privada Virtual (VPC), lo que proporciona acceso a la red privada a través de su red de VPC o conexiones de VPN. AWS Direct Connect Esta opción ofrece una seguridad mejorada mediante el aislamiento de la red y se recomienda para aplicaciones internas.
**nota**  
Debe tener una configuración de VPC de doble pila. Para obtener más información, consulte [Ejemplo de configuración de VPC de doble pila](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-migrate-ipv6-example.html) en *la Guía del usuario de Amazon Virtual Private Cloud*. 

     Al configurar un punto de conexión alojado en una VPC, tendrás que especificar:
     + **VPC**: seleccione una VPC existente o cree una nueva. Hay disponible el botón **Crear una VPC**.
     + **Zonas de disponibilidad**: elija las zonas de disponibilidad en las que se implementará su terminal.
     + **Subredes**: seleccione subredes dentro de cada zona de disponibilidad elegida.
     + **Grupos de seguridad**: seleccione o cree grupos de seguridad para controlar el acceso en función de las direcciones IP de origen. Si no se especifica, se utiliza el grupo de seguridad predeterminado de la VPC. Administre los grupos de seguridad a través de la consola de VPC. Configure sus grupos de seguridad de VPC para permitir el tráfico entrante de su red a través de HTTPS en el puerto TCP 443. Esto es necesario para la autenticación del IAM Identity Center y para cargar el contenido estático de las aplicaciones web. 
**nota**  
El punto de acceso no se puede personalizar para los puntos de enlace de VPC. Para añadir una URL personalizada, usa el punto de conexión público.

## Pasos posteriores a la creación
<a name="webapp-vpce-post-creation"></a>
+ Asegúrese de configurar una política de intercambio de recursos entre orígenes (CORS) para todos los depósitos a los que se accede desde el punto final de la aplicación web. Consulte [Política de intercambio de recursos entre orígenes (CORS)](#webapp-vpce-cors).
+ Actualice su política de bucket para permitir que el tráfico que se origine únicamente en su VPC pase por su punto de enlace de VPC. Consulte [Restricción del acceso a un punto de conexión de la VPC específico](#webapp-vpce-bucket-policy).
+ Asigne o añada usuarios o grupos a la aplicación web Transfer Family. Consulte [Asigne o añada usuarios o grupos a una aplicación web Transfer Family](webapp-add-users.md).

## Política de intercambio de recursos entre orígenes (CORS)
<a name="webapp-vpce-cors"></a>

Debe configurar el intercambio de recursos entre orígenes (CORS) para todos los depósitos que utilice su aplicación web. Para obtener más información acerca de CORS, consulte [Configure el intercambio de recursos entre orígenes (CORS) para su depósito](access-grant-cors.md).

**importante**  
Antes de usar la siguiente política de ejemplo, reemplaza el origen permitido por tu punto de acceso. De lo contrario, los usuarios finales recibirán un error cuando intenten acceder a una ubicación de su aplicación web.

**Ejemplo de política:**

```
[
  {
    "AllowedHeaders": [
      "*"
    ],
    "AllowedMethods": [
      "GET",
      "PUT",
      "POST",
      "DELETE",
      "HEAD"
    ],
    "AllowedOrigins": [
      "https://vpce-1234567-example.vpce-mq.transfer-webapp.us-east-1.on.aws"
    ],
    "ExposeHeaders": [
      "last-modified",
      "content-length",
      "etag",
      "x-amz-version-id",
      "content-type",
      "x-amz-request-id",
      "x-amz-id-2",
      "date",
      "x-amz-cf-id",
      "x-amz-storage-class",
      "access-control-expose-headers"
    ],
    "MaxAgeSeconds": 3000
  }
]
```

## Restricción del acceso a un punto de conexión de la VPC específico
<a name="webapp-vpce-bucket-policy"></a>

El siguiente es un ejemplo de una política de bucket de Amazon S3 que restringe el acceso a un bucket específico, `amzn-s3-demo-bucket`, solo desde el punto de conexión de la VPC con el ID `vpce-1a2b3c4d`. Si el punto de conexión específico no se usa, la política deniega todo el acceso al bucket. La condición `aws:SourceVpce` especifica el punto de conexión. La condición `aws:SourceVpce` no requiere un ARN para el recurso de punto de enlace de la VPC, solo el ID de la VPC. Para obtener más información sobre cómo actualizar su política de bucket para permitir únicamente el tráfico que se origina en su VPC, consulte [Controlar el acceso desde los puntos de enlace de la VPC](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies-vpc-endpoint.html) con políticas de bucket. Para obtener más información sobre el uso de condiciones en una política, consulta los [ejemplos de políticas de buckets que utilizan claves](https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazon-s3-policy-keys.html) de condición. Como requisito previo para aplicar esta política, debe crear un punto de enlace de [VPC de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html).

**importante**  
Antes de utilizar la política de ejemplo siguiente, reemplace el ID del punto de conexión de la VPC por un valor adecuado para su caso de uso. De lo contrario, no podrá acceder a su bucket.

```
{
  "Version":"2012-10-17",
  "Id": "Policy1415115909152",
  "Statement": [
    {
      "Sid": "Access-to-specific-VPCE-only",
      "Principal": "*",
      "Action": "s3:*",
      "Effect": "Deny",
      "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket",
                   "arn:aws:s3:::amzn-s3-demo-bucket/*"],
      "Condition": {
        "StringNotEquals": {
          "aws:SourceVpce": "vpce-1a2b3c4d"
        }
      }
    }
  ]
}
```

# Asigne o añada usuarios o grupos a una aplicación web Transfer Family
<a name="webapp-add-users"></a>

Después de crear una aplicación web Transfer Family, puede asignar usuarios y grupos que luego podrán acceder a la aplicación web. Puede recuperar los usuarios que ya estén creados y almacenados en el Centro de identidad de IAM o puede [añadir nuevos usuarios directamente](https://docs.aws.amazon.com/singlesignon/latest/userguide/addusers.html) (si utiliza un directorio del Centro de identidades de IAM como proveedor de identidad). Si añade nuevos usuarios, también se añadirán a su instancia del Centro de identidades de IAM.

Tenga en cuenta lo siguiente:
+ Solo puede añadir nuevos usuarios si utiliza el directorio del Centro de Identidad de IAM como fuente de identidad y si tiene los permisos adecuados. Si es miembro de una instancia de la organización, es posible que no tenga los permisos necesarios para añadir usuarios.
**nota**  
Si no asignas usuarios o grupos a tu aplicación, los usuarios recibirán un mensaje de error cuando intenten iniciar sesión en la aplicación web.
+ Si crea un usuario nuevo, también debe crear una concesión de acceso a S3 para que este usuario pueda acceder a los datos de su aplicación web.
+ Tras crear un nuevo usuario, ese usuario recibe un correo electrónico de incorporación del Centro de Identidad de IAM con instrucciones sobre cómo proceder.

**Para asignar usuarios a una aplicación web Transfer Family**

1. Ve a tu lista de aplicaciones web y elige la que quieras editar.

1. Elija **Asignar usuarios y grupos**.  
![\[Pantalla que muestra los detalles de una aplicación web seleccionada.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-transfer-details.png)

1. Para asignar los usuarios que haya creado anteriormente en el Centro de identidades de IAM, seleccione **Asignar usuarios y grupos existentes**. Para crear nuevos usuarios, vaya al paso 4.

   1. Aparece una pantalla de información. Selecciona **Comenzar** para continuar.

   1. Busca al usuario. Tenga en cuenta que no aparece ningún usuario hasta que comience a introducir sus criterios de búsqueda. Debe buscar por el *nombre que se muestra*, no por el *nombre de usuario*, si es diferente. Solo se muestran las coincidencias exactas. Si no encuentra a su usuario, vaya a la consola de administración del IAM Identity Center, busque al usuario y, a continuación, copie y pegue aquí su nombre para mostrar.  
![\[Pantalla que muestra el cuadro de diálogo de búsqueda para añadir usuarios y grupos a su aplicación web.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-transfer-add-user.png)

   1. Elija los usuarios y grupos que desee añadir y, a continuación, seleccione **Asignar**.

1. Para crear un usuario nuevo, selecciona **Agregar y asignar nuevos usuarios**.

   1. Aparece una pantalla de información. Selecciona **Comenzar** para continuar.

   1. Elija **Agregar usuarios nuevos**.

   1. Introduzca los siguientes detalles de usuario en el cuadro de diálogo: nombre de usuario, nombre y apellidos y una dirección de correo electrónico.   
![\[Pantalla que muestra el cuadro de diálogo Añadir nuevos usuarios.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-transfer-add-user-new.png)

   1. Seleccione **Siguiente** y, a continuación, seleccione **Añadir** para añadir el usuario y cerrar el cuadro de diálogo o **Añadir nuevo usuario** para crear otro usuario.

# Configure el intercambio de recursos entre orígenes (CORS) para su depósito
<a name="access-grant-cors"></a>

Debe configurar el intercambio de recursos entre orígenes (CORS) para todos los depósitos que utilice su aplicación web. Una *configuración de CORS* es un documento que define las reglas que identifican los orígenes a los que permitirá acceder a su depósito. Para obtener más información sobre CORS, consulte [Configuración del uso compartido de recursos entre orígenes (](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html?icmpid=docs_amazons3_console)CORS).

**importante**  
Si no configura CORS, los usuarios finales recibirán un error cuando intenten acceder a una ubicación de su aplicación web.

**Para configurar el uso compartido de recursos entre orígenes (CORS) para su bucket de Amazon S3**

1. Inicie sesión en la consola de Amazon S3 Consola de administración de AWS y ábrala en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Selecciona **Buckets** en el panel de navegación izquierdo y busca tu bucket en el cuadro de diálogo de búsqueda y, a continuación, selecciona la pestaña **Permisos**.

1. En el **uso compartido de recursos entre orígenes (CORS)**, selecciona **Editar** y pega el siguiente código. *WebAppEndpoint*Sustitúyalo por el punto de acceso real de tu aplicación web. Puede ser el punto final de acceso público o alojado en la VPC que se crea al crear la aplicación web, o un punto final de acceso personalizado, si usted crea uno. Asegúrese de no introducir barras diagonales finales, ya que al hacerlo se producen errores cuando los usuarios intentan iniciar sesión en su aplicación web.
   + Ejemplo incorrecto: `https://webapp-c7bf3423.transfer-webapp.us-east-2.on.aws/`
   + Ejemplos correctos:
     + `https://webapp-c7bf3423.transfer-webapp.us-east-2.on.aws`
     + `https://vpce-05668789767a-fh45z079.vpce-mq.transfer-webapp.us-east-1.on.aws`

   Si va a reutilizar un depósito para varias aplicaciones web, añada sus puntos finales a la lista. `AllowedOrigins`

   ```
   [
     {
       "AllowedHeaders": [
         "*"
       ],
       "AllowedMethods": [
         "GET",
         "PUT",
         "POST",
         "DELETE",
         "HEAD"
       ],
       "AllowedOrigins": [
         "https://WebAppEndpoint"
       ],
       "ExposeHeaders": [
         "last-modified",
          "content-length",
         "etag",
         "x-amz-version-id",
         "content-type",
         "x-amz-request-id",
         "x-amz-id-2",
         "date",
         "x-amz-cf-id",
         "x-amz-storage-class",
         "access-control-expose-headers"
        ],
       "MaxAgeSeconds": 3000
     }
   ]
   ```

1.  Seleccione **Guardar cambios** para actualizar el CORS.

Para probar la configuración del CORS, consulte [Probar](https://docs.aws.amazon.com/AmazonS3/latest/userguide/testing-cors.html) el CORS.

# Configuración de las concesiones de acceso a Amazon S3 para las aplicaciones web Transfer Family
<a name="webapp-access-grant"></a>

En este tema se describe cómo añadir una concesión de acceso mediante Amazon S3 Access Grants. Esta concesión de acceso define el acceso a sus datos directamente a los usuarios y grupos de su directorio corporativo y proporciona credenciales temporales just-in-time, con privilegios mínimos, en función de las concesiones. Una concesión individual en una instancia de S3 Access Grants permite a un usuario o grupo específico de un directorio corporativo acceder desde una ubicación que esté registrada en su instancia de S3 Access Grants. Para obtener más información, consulte los [conceptos de S3 Access Grants](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-concepts.html) en la Guía del usuario de Amazon S3.

**nota**  
No puede usar el directorio del Centro de Identidad de IAM con S3 Access Grants excepto con las aplicaciones web Transfer Family.

Debe especificar una concesión de acceso a Amazon S3 para la propagación de la identidad. Una concesión de acceso a Amazon S3 almacena los datos a los que deben acceder los usuarios finales. Cuando los usuarios finales inician sesión en la aplicación web Transfer Family, S3 Access Grants transfiere la identidad del usuario a la aplicación de confianza. En esta sección se describe cómo añadir y configurar una instancia de concesión de acceso a Amazon S3 y, a continuación, una concesión de acceso para un bucket de Amazon S3.

**nota**  
Tenga preparados el [ARN de su instancia del IAM Identity Center](webapp-identity-center.md#identity-center-arn) y su ID de usuario o grupo, ya que los necesitará para completar la configuración de su concesión de acceso.

**Para crear una subvención con Amazon S3 Access Grants**

1. Inicie sesión en la consola de Amazon S3 Consola de administración de AWS y ábrala en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Cree un depósito o anote uno existente para usarlo con su aplicación web. Para obtener información sobre la creación de buckets, consulte la [Guía del usuario de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/).

1. En el panel de navegación izquierdo, elija **Access Grants**.

1. Elija **Crear instancia de S3 Access Grants** y proporcione la siguiente información.
   + Seleccione **Añadir instancia de IAM Identity Center en** el *your-Region* lugar donde *your-Region* se encuentra la suya Región de AWS. Mantenga esta casilla desactivada si no utiliza el Centro de identidad de IAM como proveedor de identidad.
   + Pegue el ARN de la instancia de IAM Identity Center.  
![\[Pantalla que muestra el cuadro de diálogo de la instancia Create Access Grants de Amazon S3 con valores de ejemplo.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-grants-instance.png)

   Elija **Siguiente** para continuar.

1. **Registre los buckets o prefijos de S3 como ubicaciones**. Le recomendamos que registre la ubicación predeterminada y la asigne a un rol de IAM. `s3://` La ubicación en esta ruta predeterminada cubre el acceso a todos los buckets de Amazon S3 Región de AWS de su cuenta. Al crear una concesión de acceso, puede limitar el ámbito a un depósito, un prefijo o un objeto dentro de la ubicación predeterminada.

   Proporcione la siguiente información. 
   + Para el **ámbito**, busca un depósito o introduce el nombre del mismo y, si lo prefieres, un prefijo.
   + Para el rol de IAM, elija **Crear nuevo rol** para que el servicio cree un rol.

     Como alternativa, puede crear el rol usted mismo, tal y como se describe en[Configurar las funciones de IAM para las aplicaciones web Transfer Family](webapp-roles.md), y luego introducir su ARN aquí.   
![\[Pantalla que muestra el cuadro de diálogo Registrar buckets o prefijos de S3 como ubicaciones de Amazon S3 con los ajustes predeterminados de Alcance y Crear nuevos roles.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-grants-register-new.png)

   Elija **Siguiente** para continuar.

1. En la pantalla **Crear subvención**, proporcione los siguientes detalles.
   + Para **los permisos**, selecciona **Leer** y **escribir**. Los permisos de concesión de acceso pueden ser de solo lectura o de lectura y escritura, pero no se admite el permiso de solo escritura.
   + Para el **tipo de concesionario**, elija la identidad del **directorio** en el Centro de identidades de IAM.
   + En el **tipo de identidad del directorio**, seleccione **Usuario** o **Grupo**, según el tipo que desee registrar ahora.
   + En el ** user/group ID del centro de identidad de IAM**, pegue el ID de su usuario o grupo. Este ID está disponible en la consola del **IAM Identity Center** y en la aplicación web Transfer Family, en la tabla de usuarios y grupos.  
![\[Pantalla que muestra el cuadro de diálogo Create Grant de Amazon S3 con valores de ejemplo.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-access-grant-details.png)

   Elija **Siguiente**.

1. Revise la configuración de la pantalla. Si todo es correcto, selecciona **Finalizar** para crear la concesión de acceso. Como alternativa, puede elegir **Cancelar** o **Anterior** para realizar cambios.  
![\[Pantalla que muestra el cuadro de diálogo Revisar y finalizar con valores de ejemplo.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-access-grants-review.png)

![\[Pantalla que muestra la nueva concesión de acceso en una vista de lista.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-access-grants-finished.png)


Esto completa la configuración de la aplicación web. Los usuarios y grupos que haya configurado pueden visitar la aplicación web en el punto de acceso, iniciar sesión y cargar y descargar archivos.

# Actualice su terminal de acceso con una URL personalizada
<a name="webapp-customize"></a>

El punto de acceso predeterminado que se crea con tu aplicación web contiene identificadores generados por el servicio. Para ofrecer una experiencia de marca, es posible que desees proporcionar una URL personalizada para que tus usuarios accedan a tu aplicación web Transfer Family. En este tema se describe cómo actualizar tu terminal de acceso con una URL personalizada.

**nota**  
El punto de acceso no se puede personalizar para los puntos de enlace de VPC. Para añadir una URL personalizada, usa el punto de conexión público.

**nota**  
El siguiente procedimiento se basa en el uso de la [plantilla de CloudFormation pila](https://s3.amazonaws.com/aws-transfer-resources/custom-domain-templates/aws-transfer-web-app-custom-domain-distribution.template.yml) recomendada. No necesita usar la plantilla: puede crear la distribución directamente desde la [CloudFront consola](https://console.aws.amazon.com/cloudfront/v4/home).  
Sin embargo, la plantilla proporcionada simplifica el proceso y evita errores de configuración. Si no utilizas la CloudFormation plantilla, asegúrate de seguir estas pautas:  
La [política de solicitudes de Origin](https://docs.aws.amazon.com//AmazonCloudFront/latest/DeveloperGuide/using-managed-origin-request-policies.html#managed-origin-request-policy-cors-custom) debe reenviar las cadenas de consulta y las cookies al origen y no debe reenviar el `Host` encabezado al origen.
La [política de caché](https://docs.aws.amazon.com//AmazonCloudFront/latest/DeveloperGuide/using-managed-cache-policies.html#managed-cache-policy-origin-cache-headers) no debe incluir el `Host` encabezado en la clave de caché.

**Para personalizar la URL de su aplicación web**

1. Cree una CloudFront distribución mediante la AWS CloudFormation plantilla proporcionada por Transfer Family, la [plantilla de CloudFormation pila](https://s3.amazonaws.com/aws-transfer-resources/custom-domain-templates/aws-transfer-web-app-custom-domain-distribution.template.yml).

   1. Abra la CloudFormation consola en [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

   1. Elija **Crear pila** y especifique lo siguiente.
      + En la sección **Requisitos previos: preparar una plantilla**, **elija Elegir una plantilla existente**.
      + En la sección **Especificar plantilla**, elija **Cargar un archivo de plantilla**.
      + Guarde el archivo [de plantilla de CloudFormation pila]( https://s3.amazonaws.com/aws-transfer-resources/custom-domain-templates/aws-transfer-web-app-custom-domain-distribution.template.yml) y cárguelo aquí.

   1. Selecciona **Siguiente** y proporciona la siguiente información.
      + **WebAppEndpoint**: copie el valor de su aplicación web
      + **AccessEndpoint**: proporciona el nombre de dominio personalizado que quieres usar
      + **AcmCertificateArn**: proporcione el ARN de un SSL/TLS certificado público o privado que esté almacenado en AWS Certificate Manager 

   1. Complete el CloudFormation asistente hasta que se cree la nueva pila.

1. En su aplicación web, edite el **punto final de acceso** y actualice la **URL personalizada** por la URL que desee usar.  
![\[Pantalla que muestra un punto de acceso personalizado para una aplicación web Transfer Family.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-custom-name.png)

1. Crea registros de DNS para dirigir el tráfico de tu nombre de dominio personalizado a la CloudFront distribución. Si usa Route 53 para la zona, puede crear un registro de alias o CNAME para el nombre de la CloudFront distribución (por ejemplo, **xxxx.cloudfront.net**). Para obtener información sobre el uso de Amazon Route 53 con CloudFront, consulte [Configuración de Amazon Route 53 para enrutar el tráfico a una CloudFront distribución](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html#routing-to-cloudfront-distribution-config).

1. Actualice su política de uso compartido de recursos entre orígenes sustituyendo el punto de acceso predeterminado por la siguiente línea en el bloque de `AllowedOrigins` códigos:

   ```
    "https://custom-url"
   ```

   Debes realizar este cambio para cada segmento que utilice tu aplicación web.

   Tras realizar la actualización, la `AllowedOrigins` sección de la política CORS debería tener el siguiente aspecto:

   ```
   "AllowedOrigins": [
       "https://custom-url"],
   ```

   Solo necesitas una AllowedOrigins entrada para cada aplicación web de Transfer Family.

   Consulte el procedimiento [Configurar el uso compartido de recursos entre orígenes (CORS) para su bucket de Amazon S3](access-grant-cors.md#cors-configure) para obtener más información.

Ahora puede visitar su punto de acceso personalizado y compartir este enlace con sus usuarios finales.

# CloudTrail registro para aplicaciones web Transfer Family
<a name="webapp-cloudtrail"></a>

CloudTrail es uno Servicio de AWS que crea un registro de las acciones realizadas dentro de su Cuenta de AWS. Supervisa y registra continuamente las operaciones de la API para actividades como los inicios de sesión en la consola, AWS Command Line Interface los comandos y SDK/API las operaciones. Esto te permite llevar un registro de quién realizó qué acción, cuándo y desde dónde. CloudTrail contribuye a la auditoría, la gestión del acceso y el cumplimiento de las normas, ya que proporciona un historial de todas las actividades de su AWS entorno.

En el caso de las aplicaciones web Transfer Family, puede realizar un seguimiento tanto de los eventos de autenticación como de las operaciones de acceso a los datos realizadas por sus usuarios. Para habilitar un registro completo, debes:

1. Configure CloudTrail para registrar los eventos de administración a fin de realizar un seguimiento de las actividades de autenticación.

1. Habilite los eventos de datos de Amazon S3 para realizar un seguimiento de las operaciones de archivos realizadas a través de su aplicación web.

**Véase también**
+ [CloudTrail casos de uso del IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/sso-cloudtrail-use-cases.html)
+ [Descripción de los eventos de inicio de sesión en el Centro de Identidad de IAM](https://docs.aws.amazon.com/singlesignon/latest/userguide/understanding-sign-in-events.html)
+ [CloudTrail Elemento UserIdentity](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)
+ [Habilitar CloudTrail el registro de eventos para cubos y objetos de S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-cloudtrail-logging-for-s3.html)
+ [ CloudTrailEventos de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/cloudtrail-logging-s3-info.html)

## Habilitación de eventos de datos de Amazon S3
<a name="webapp-enable-s3-data-events"></a>

Para realizar un seguimiento de las operaciones de archivos realizadas a través de las aplicaciones web Transfer Family en sus buckets de Amazon S3, debe habilitar los eventos de datos para esos buckets. Los eventos de datos proporcionan actividad de API a nivel de objeto y son particularmente útiles para rastrear las cargas y descargas de archivos y otras operaciones realizadas por los usuarios de aplicaciones web.

Para habilitar los eventos de datos de Amazon S3 en su aplicación web Transfer Family:

1. Abre la CloudTrail consola en [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/).

1. En el panel de navegación, elija **Rutas** y, a continuación, seleccione una ruta existente o cree una nueva.

1. En los **selectores de eventos avanzados**, selecciona **Editar**.

1. Selecciona **Añadir un selector de eventos avanzado**.

1. Para el primer selector de campos:
   + Defina **el campo** como `eventCategory`
   + Defina **el operador** como **igual**
   + Establezca **el valor** en `Data`

1. Seleccione **Añadir campo** y, para el segundo selector de campos:
   + Defina **el campo** como `resources.type`
   + Defina **el operador** como **igual**
   + Establezca **el valor** en `AWS::S3::Object`

1. (Opcional) Para registrar eventos solo para grupos específicos, selecciona **Agregar campo** y agrega:
   + Defina el **campo** como `resources.ARN`
   + Defina **el operador** para que **comience con**
   + Establezca **el valor** en `arn:aws:s3:::your-bucket-name/`

1. Seleccione **Save changes (Guardar cambios)**.

Como alternativa, puede usar la configuración de eventos de datos heredada:

1. En **Eventos de datos**, selecciona **Editar**.

1. En el **tipo de evento de datos**, seleccione **Eventos de bucket y objeto de S3**.

1. Elija los buckets de Amazon S3 para registrar los eventos de datos. Puede seleccionar **Todos los buckets S3 actuales y futuros o especificar buckets** individuales.

1. Elija si desea registrar los eventos de **lectura**, de **escritura** o ambos.

1. Seleccione **Save changes (Guardar cambios)**.

Tras habilitar los eventos de datos, puede acceder a estos registros en el bucket de Amazon S3 configurado para CloudTrail. Los registros incluyen detalles como el usuario que realizó la acción, la marca temporal de la acción, el objeto específico afectado y el `onBehalfOf` campo que ayuda a rastrear las acciones realizadas a través `userId` de las aplicaciones web Transfer Family.

### Buscar y ver tus registros
<a name="webapp-find-view-logs"></a>

Hay varias formas de buscar y ver CloudTrail los registros de la aplicación web Transfer Family:

#### Uso de la CloudTrail consola
<a name="webapp-find-logs-console"></a>

La forma más rápida de ver los eventos recientes:

1. Abre la CloudTrail consola en [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/).

1. Elija **Historial de eventos**.

1. Filtrar eventos por:
   + **Origen del evento**: `signin.amazonaws.com` para eventos de aplicaciones web
   + **Origen del evento**: `s3.amazonaws.com` para operaciones con archivos

1. Haga clic en cualquier evento para ver información detallada.

#### Acceso a los registros en Amazon S3
<a name="webapp-find-logs-s3"></a>

Para acceder a los archivos de registro completos almacenados en Amazon S3:

1. Identifica el bucket de Amazon S3 de tu CloudTrail ruta:

   ```
   aws cloudtrail describe-trails --query 'trailList[*].[Name,S3BucketName]' --output table
   ```

1. Navegue hasta los archivos de registro en Amazon S3:

   ```
   aws s3 ls s3://your-cloudtrail-bucket/AWSLogs/account-id/CloudTrail/region/YYYY/MM/DD/
   ```

1. Descargue y busque archivos de registro para su ID de aplicación web:

   ```
   aws s3 cp s3://your-cloudtrail-bucket/AWSLogs/account-id/CloudTrail/region/YYYY/MM/DD/ . --recursive
   gunzip *.json.gz
   grep -l "webapp-1a2b3c4d5e6f7g8h9" *.json
   ```

#### Se utiliza AWS CLI para buscar eventos
<a name="webapp-find-logs-cli"></a>

Busque eventos específicos de aplicaciones web mediante AWS CLI:

```
aws logs filter-log-events \
  --log-group-name /aws/cloudtrail/your-trail-name \
  --filter-pattern "webapp-1a2b3c4d5e6f7g8h9" \
  --start-time $(date -d "1 day ago" +%s)000
```

O busque eventos de autenticación:

```
aws logs filter-log-events \
  --log-group-name /aws/cloudtrail/your-trail-name \
  --filter-pattern "UserAuthentication" \
  --start-time $(date -d "1 day ago" +%s)000
```

## Ejemplos de registros de autenticación
<a name="webapp-authentication-log-examples"></a>

CloudTrail registra los eventos de autenticación de las aplicaciones web de Transfer Family, lo que puede ayudarte a realizar un seguimiento de los intentos de inicio de sesión correctos y fallidos. Estos registros son especialmente útiles para la supervisión de la seguridad y el cumplimiento.

**Topics**
+ [Ejemplo de entrada de registro para la verificación de credenciales](#webapp-credential-verification-example)
+ [Ejemplo de entrada de registro para la autenticación de inicio de sesión](#webapp-signin-authentication-example)
+ [Ejemplo de entrada de registro para ListCallerAccessGrants](#webapp-list-caller-access-grants-example)
+ [Ejemplo de entrada de registro para GetDataAccess un evento](#webapp-get-data-access-example)

### Ejemplo de entrada de registro para la verificación de credenciales
<a name="webapp-credential-verification-example"></a>

El siguiente ejemplo muestra una entrada de CloudTrail registro para un evento de verificación de credenciales que se produce durante el proceso de autenticación.

```
{
    "eventVersion": "1.09",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "123456789012",
        "arn": "",
        "accountId": "123456789012",
        "accessKeyId": "",
        "userName": "demo-user-2",
        "onBehalfOf": {
            "userId": "f12bb510-a011-702f-10dd-5607e2776dbc",
            "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e"
        },
        "credentialId": "58138a11-87e5-401d-8f0b-7161c9389112"
    },
    "eventTime": "2025-08-08T15:29:30Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "CredentialVerification",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "192.0.2.224",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "f304a48b-7b6d-41c8-b136-4f49c91c1f31",
        "CredentialType": "PASSWORD"
    },
    "requestID": "ff936828-4a81-453c-802d-81368b6bca1a",
    "eventID": "70cb7008-493d-42c2-a9eb-38bf168af6a8",
    "readOnly": false,
    "eventType": "AWS ServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "serviceEventDetails": {
        "CredentialVerification": "Success"
    },
    "eventCategory": "Management"
}
```

Este evento proporciona detalles adicionales sobre el paso de verificación de credenciales del proceso de autenticación y muestra el identificador de credencial específico y el identificador del flujo de trabajo de autenticación utilizados.

### Ejemplo de entrada de registro para la autenticación de inicio de sesión
<a name="webapp-signin-authentication-example"></a>

En el siguiente ejemplo, se muestra una entrada de CloudTrail registro de un evento de autenticación de usuario correcto durante el inicio de sesión en una aplicación web mediante el IAM Identity Center.

```
{
    "eventVersion": "1.09",
    "userIdentity": {
        "type": "Unknown",
        "principalId": "123456789012",
        "arn": "",
        "accountId": "123456789012",
        "accessKeyId": "",
        "userName": "demo-user-2",
        "onBehalfOf": {
            "userId": "f12bb510-a011-702f-10dd-5607e2776dbc",
            "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e"
        },
        "credentialId": "b41f0a02-1635-4d07-a414-aecf9e14b906"
    },
    "eventTime": "2025-08-07T14:09:07Z",
    "eventSource": "signin.amazonaws.com",
    "eventName": "UserAuthentication",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "192.0.2.14",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36",
    "requestParameters": null,
    "responseElements": null,
    "additionalEventData": {
        "AuthWorkflowID": "7a4ef12c-7c4b-4bc3-b5bd-c2469afcc795",
        "LoginTo": "https://example.awsapps.com/start/",
        "CredentialType": "PASSWORD"
    },
    "requestID": "fc91bcf0-ac53-4454-a1a0-fb911eacc095",
    "eventID": "18522007-1e60-4a71-b2b5-150baf504ab3",
    "readOnly": false,
    "eventType": "AWS ServiceEvent",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "serviceEventDetails": {
        "UserAuthentication": "Success"
    },
    "eventCategory": "Management"
}
```

En este ejemplo, anote los siguientes campos importantes:
+ `eventSource`: Muestra «signin.amazonaws.com», lo que indica que se trata de un evento de autenticación del IAM Identity Center.
+ `userIdentity.onBehalfOf`: Contiene el ID de usuario y el ARN del almacén de identidades del usuario de la aplicación web.
+ `additionalEventData.LoginTo`: Muestra la URL de la aplicación del Centro de Identidad de IAM a la que se accede.
+ `additionalEventData.CredentialType`: Indica el método de autenticación utilizado (CONTRASEÑA).
+ `serviceEventDetails`: Muestra el resultado de la autenticación (correcto).

### Ejemplo de entrada de registro para ListCallerAccessGrants
<a name="webapp-list-caller-access-grants-example"></a>

El siguiente ejemplo muestra una entrada de CloudTrail registro de un ListCallerAccessGrants evento, que se produce cuando la aplicación web Transfer Family consulta las concesiones de acceso disponibles para un usuario.

```
{
    "eventVersion": "1.11",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAEXAMPLEID:aws-transfer",
        "arn": "arn:aws:sts::123456789012:assumed-role/AWS TransferWebAppIdentityBearer-us-east-2/aws-transfer",
        "accountId": "123456789012",
        "accessKeyId": "ASIAEXAMPLEKEY",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAEXAMPLEID",
                "arn": "arn:aws:iam::123456789012:role/service-role/AWS TransferWebAppIdentityBearer-us-east-2",
                "accountId": "123456789012",
                "userName": "AWS TransferWebAppIdentityBearer-us-east-2"
            },
            "attributes": {
                "creationDate": "2025-08-08T15:29:34Z",
                "mfaAuthenticated": "false"
            }
        },
        "invokedBy": "transfer.amazonaws.com",
        "onBehalfOf": {
            "userId": "f12bb510-a011-702f-10dd-5607e2776dbc",
            "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9a670c546e"
        }
    },
    "eventTime": "2025-08-08T15:29:35Z",
    "eventSource": "s3.amazonaws.com",
    "eventName": "ListCallerAccessGrants",
    "awsRegion": "us-east-2",
    "sourceIPAddress": "transfer.amazonaws.com",
    "userAgent": "transfer.amazonaws.com",
    "requestParameters": {
        "Host": "123456789012.s3-control.dualstack.us-east-2.amazonaws.com",
        "allowedByApplication": "true",
        "maxResults": "100"
    },
    "responseElements": null,
    "additionalEventData": {
        "SignatureVersion": "SigV4",
        "CipherSuite": "TLS_AES_128_GCM_SHA256",
        "bytesTransferredIn": 0,
        "AuthenticationMethod": "AuthHeader",
        "x-amz-id-2": "1g34AaAELn/fntxwrifVsr41VDl8dp5ygWFasHJFNVq5FDCWYfX0ye7s4tWHEJC8ppI5lLePYLIcw3iTXAgn5Q==",
        "bytesTransferredOut": 462
    },
    "requestID": "48485MTZEDWT0ANT",
    "eventID": "3de5dd60-b7cf-474c-a1ab-631467c1a5c3",
    "readOnly": true,
    "resources": [
        {
            "accountId": "123456789012",
            "type": "AWS:S3::AccessGrantsInstance",
            "ARN": "arn:aws:s3:us-east-2:123456789012:access-grants/default"
        }
    ],
    "eventType": "AWS ApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "eventCategory": "Management"
}
```

En este ejemplo, anote los siguientes campos importantes:
+ `eventName`: Muestra que se trata de un ListCallerAccessGrants evento que consulta las concesiones de acceso a S3 disponibles.
+ `requestParameters.allowedByApplication`: Indica que la consulta se filtra para incluir las concesiones permitidas por la aplicación.
+ `requestParameters.maxResults`: Muestra el número máximo de concesiones que se pueden devolver en la respuesta.
+ `userIdentity.onBehalfOf`: vincula la solicitud al usuario específico de la aplicación web.

Este evento ayuda a rastrear cuándo la aplicación web Transfer Family consulta a qué recursos de S3 tiene acceso un usuario, lo que proporciona visibilidad de las operaciones de descubrimiento de concesiones de acceso.

### Ejemplo de entrada de registro para GetDataAccess un evento
<a name="webapp-get-data-access-example"></a>

El siguiente ejemplo muestra una entrada de CloudTrail registro de un GetDataAccess evento, que se produce cuando la aplicación web Transfer Family solicita permisos de acceso a los recursos de S3 en nombre de un usuario.

```
{
    "eventVersion": "1.11",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROASEQRAEABP7ADWEZA5:aws-transfer",
        "arn": "arn:aws:sts::123456789012:assumed-role/AWSTransferWebAppIdentityBearer-ap-southeast-1/aws-transfer",
        "accountId": "123456789012",
        "accessKeyId": "ASIAEXAMPLEKEY",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROASEQRAEABP7ADWEZA5",
                "arn": "arn:aws:iam::123456789012:role/service-role/AWSTransferWebAppIdentityBearer-ap-southeast-1",
                "accountId": "123456789012",
                "userName": "AWSTransferWebAppIdentityBearer-ap-southeast-1"
            },
            "attributes": {
                "creationDate": "2025-05-08T16:09:05Z",
                "mfaAuthenticated": "false"
            }
        },
        "invokedBy": "transfer.amazonaws.com",
        "onBehalfOf": {
            "identityStoreArn": "arn:aws:identitystore::123456789012:identitystore/d-9667b0da7a",
            "userId": "191a35ec-10a1-70c1-e4ab-e2802411e13e"
        }
    },
    "eventTime": "2025-05-08T16:10:25Z",
    "eventSource": "s3.amazonaws.com",
    "eventName": "GetDataAccess",
    "awsRegion": "ap-southeast-1",
    "sourceIPAddress": "transfer.amazonaws.com",
    "userAgent": "transfer.amazonaws.com",
    "requestParameters": {
        "Host": "123456789012.s3-control.dualstack.ap-southeast-1.amazonaws.com",
        "durationSeconds": 900,
        "permission": "READWRITE",
        "target": "s3://amzn-s3-demo-bucket/users/john.doe/documents/*"
    },
    "responseElements": null,
    "additionalEventData": {
        "AuthenticationMethod": "AuthHeader",
        "CipherSuite": "TLS_AES_128_GCM_SHA256",
        "SignatureVersion": "SigV4",
        "bytesTransferredIn": 0,
        "bytesTransferredOut": 2244,
        "x-amz-id-2": "8ce8sZOgNwsaj9w1mzagyA+csONjYl8FgEw4FGpE8DARi90aNC0RFWlTYNEn7ChqE9RCJrTzMvS+ru7Vz2xXHrkQt/1uQ9exZTZdlhX+/fM="
    },
    "requestID": "BXGSKKQXCWS5RAHB",
    "eventID": "c11db1d1-dfb8-431e-8625-48eba2ebadfe",
    "readOnly": true,
    "resources": [
        {
            "type": "AWS:S3::AccessGrantsInstance",
            "ARN": "arn:aws:s3:ap-southeast-1:123456789012:access-grants/default",
            "accountId": "123456789012"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "recipientAccountId": "123456789012",
    "eventCategory": "Management"
}
```

En este ejemplo, anote los siguientes campos importantes:
+ `eventName`: Muestra que se trata de un GetDataAccess evento que se produce cuando Transfer Family solicita permisos de acceso para los recursos de S3.
+ `userIdentity.onBehalfOf`: contiene el ARN y el ID de usuario del almacén de identidades, lo que vincula la solicitud de acceso al usuario específico de la aplicación web.
+ `requestParameters.target`: Muestra el patrón de ruta S3 para el que se solicitó el acceso.
+ `requestParameters.permission`: Indica el tipo de acceso solicitado (READWRITE, READ o WRITE).
+ `requestParameters.durationSeconds`: Muestra durante cuánto tiempo es válida la concesión de acceso (normalmente 900 segundos/15 minutos).
+ `sourceIPAddress`y`userAgent`: ambos muestran «transfer.amazonaws.com», lo que indica que se trata de una solicitud de servicio interna.

GetDataAccess los eventos son particularmente útiles para rastrear cuándo los usuarios de la aplicación web Transfer Family tienen acceso a recursos específicos de S3, lo que ayuda a monitorear los patrones de acceso y garantizar la autorización adecuada.

## Visualización de las entradas de CloudTrail registro
<a name="webapp-view-log-entries"></a>

Hay varias formas de ver y analizar las entradas de CloudTrail registro de su aplicación web Transfer Family:

### Uso de la CloudTrail consola
<a name="webapp-view-logs-console"></a>

La CloudTrail consola proporciona una interfaz fácil de usar para ver y filtrar las entradas de registro:

1. Abra la CloudTrail consola en [https://console.aws.amazon.com/cloudtrail/](https://console.aws.amazon.com/cloudtrail/).

1. En el panel de navegación, elija **Historial de eventos**.

1. Utilice las opciones de filtro para restringir los eventos:
   + Defina la **fuente del evento** en `transfer.amazonaws.com` para ver solo los eventos de Transfer Family.
   + Filtra por **nombre de evento** para ver operaciones específicas, como`UserAuthentication`.
   + Use el **rango de tiempo** para centrarse en los eventos dentro de un período específico.

1. Haga clic en cualquier evento para ver su información detallada.

### Acceso a los registros en Amazon S3
<a name="webapp-view-logs-s3"></a>

Si ha configurado un registro para CloudTrail entregar los registros a un bucket de Amazon S3, puede acceder directamente a los archivos de registro sin procesar:

1. Abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Navegue hasta el depósito y el prefijo donde están almacenados sus CloudTrail registros.

1. Los registros están organizados por año, mes, día y región. Navegue hasta el directorio correspondiente.

1. Descargue y abra los archivos de registro, que están en formato JSON.

# Solución de problemas de sus aplicaciones web
<a name="webapp-troubleshooting"></a>

**nota**  
Estos consejos de solución de problemas están dirigidos al administrador de la aplicación web y no al usuario final. Para los usuarios finales, si tienen algún problema, pónganse en contacto con el administrador de la aplicación web. Todos los casos en los *que* aparece en los párrafos siguientes se refieren al administrador de la aplicación web.

## Solucionar errores de red
<a name="webapp-network-error"></a>

**Descripción**

El usuario final ve un aviso de red llamado **Error de red** al cargar el punto final de la aplicación web.

**Causa**

Los problemas más comunes son los siguientes:
+ El administrador no asignó el usuario que intenta iniciar sesión en la nueva aplicación.
+ El administrador no agregó las acciones necesarias a sus funciones de IAM.
+ Aparece una lista de concesiones de acceso de S3 asignadas a su usuario, pero CORS no está configurado correctamente para su depósito o depósitos de Amazon S3.

 **Solución** 
+  En el Centro de identidades de IAM, asegúrese de asignar el usuario a la aplicación correcta. O bien, si tiene un grupo asignado, asegúrese de que el usuario que intenta iniciar sesión pertenece al grupo correcto. Esto se describe en [Asigne o añada usuarios o grupos a una aplicación web Transfer Family](webapp-add-users.md).
+ Compruebe si sus funciones contienen las acciones necesarias en la **política de confianza personalizada** tanto para las acciones como para `sts:AssumeRole` las `sts:SetContext` acciones. Esto se describe en [Configurar las funciones de IAM para las aplicaciones web Transfer Family](webapp-roles.md).
+ Comprueba la política CORS para todos los buckets que utiliza tu aplicación web. Esto se describe en [Configurar el uso compartido de recursos entre orígenes (CORS) para su bucket de Amazon S3](access-grant-cors.md#cors-configure).

## Solucione el problema de que el bucket configurado no aparece
<a name="webapp-no-bucket"></a>

**Descripción**

Todo parece estar configurado correctamente, pero el bucket de Amazon S3 no aparece en la aplicación web.

**Causa**

Una posible causa es que el bucket de Amazon S3 no esté en la misma cuenta que la aplicación web.

 **Solución** 

Asegúrese de que el bucket de Amazon S3 esté en la misma cuenta que la aplicación web. Actualmente, no se admiten los depósitos entre cuentas.

## Solucione los errores de URL personalizadas
<a name="webapp-customURL-errors"></a>

**Descripción**

Cuando el usuario final inicia sesión en la aplicación web, recibe el mensaje de error Error en la **autorización: falta el código de autorización**.

**Causa**

Si usó CloudFront directamente la CloudFormation plantilla proporcionada, en lugar de la proporcionada, es probable que haya configurado mal la política de solicitudes de origen para no reenviar las cadenas de consulta.

**Solución**

Actualiza tu política de solicitudes de origen para reenviar las cadenas de consulta y las cookies al origen.

**Descripción**

Cuando el usuario final intenta acceder a una aplicación web de Transfer Family, recibe una respuesta 404.

**Causa**

Si la usaste CloudFront directamente, en lugar de la CloudFormation plantilla proporcionada, es probable que hayas configurado mal la política de caché para incluir el `Host` encabezado en la clave de caché o que hayas configurado mal la política de solicitud de origen para reenviar el `Host` encabezado.

**Solución**
+ Asegúrese de que su política de caché no incluya el `Host` encabezado en la clave de caché
+ Asegúrate de que tu política de solicitudes de origen no reenvíe el `Host` encabezado.

## Soluciona errores varios
<a name="webapp-various-errors"></a>

**Descripción**

El usuario final no puede iniciar sesión, no puede ver ningún depósito o archivo, o recibe otro error.

**Causa**

Una posible causa es que el ARN de la instancia del IAM Identity Center no coincide con el valor del ARN de sus subvenciones o el ARN de la instancia de IAM Identity Center de su aplicación web.

 **Solución** 

Compruebe los siguientes elementos para ver si coinciden.
+  En el Centro de identidades de IAM, vaya a **Configuración** y consulte el ARN de la **instancia.**

  ```
  arn:aws:sso:::instance/ssoins-instance-identifier
  ```
+ En Amazon S3, vaya a **Access Grants y consulte** el ARN de su **instancia de IAM Identity Center.**

  ```
  arn:aws:sso::account-id:application/ssoins-instance-identifier/apl-1234567890abcdef0
  ```
+ En Transfer Family, vaya a la página de detalles de la aplicación web y consulte el ARN de su instancia.

  ```
  arn:aws:sso:::instance/ssoins-instance-identifier
  ```

El *instance-identifier* valor debe ser el mismo en estos tres lugares.

## Aparecen cubos S3 duplicados en la aplicación web
<a name="webapp-duplicate-buckets"></a>

**Descripción**

Los usuarios ven el mismo bucket de S3 enumerado varias veces en la interfaz de la aplicación web Transfer Family.

**Causa**

Esto ocurre cuando un usuario forma parte de varios grupos de Active Directory que tienen concesiones duplicadas en el mismo depósito de S3. La aplicación web muestra todas las concesiones de nivel superior asociadas al usuario (UID o GID), independientemente de si el usuario tiene varias concesiones asignadas a la misma ubicación del depósito.

**Solución**

Para resolver este problema, los administradores deben desduplicar las concesiones para que cada usuario solo tenga una concesión para cada ubicación de S3. Revise la configuración de las concesiones de acceso de S3 y consolide las concesiones duplicadas para el mismo segmento en diferentes grupos de Active Directory.

# Instrucciones para el usuario final de las aplicaciones web Transfer Family
<a name="webapp-end-users"></a>

**nota**  
En este tema, la información está destinada a los usuarios finales que interactúan con la aplicación web. Todas las instancias en las *que* aparece en este tema se refieren a los usuarios finales.

En este tema se describe cómo acceder a una aplicación AWS Transfer Family web que está autorizado a usar y cómo puede interactuar con ella.

## Cuotas de aplicaciones web
<a name="end-user-quotas"></a>

Tenga en cuenta las siguientes limitaciones cuando utilice aplicaciones web.
+ Número máximo de resultados de búsqueda por consulta: 10 000
+ Los buckets de Amazon S3 que utiliza la aplicación web Transfer Family deben estar en la misma cuenta que la propia aplicación web. Actualmente, no se admiten los depósitos entre cuentas.
+ Amplitud máxima de búsqueda por consulta: 10 000 archivos buscados
+ Tamaño máximo de carga por archivo: 160 GB (149 GiB)
+ Tamaño máximo de archivo para copiar: 5,36 GB (5 GiB)
+ No se admiten nombres de carpetas que comiencen o terminen con puntos (.)

## Experiencia de usuario para los usuarios del IAM Identity Center
<a name="end-user-identity-center"></a>

En esta sección se describe la experiencia del usuario si su organización utilizaba el Centro de identidades de IAM para configurar sus usuarios.

**Para acceder a una aplicación web de Transfer Family**

1. Deberías recibir un correo electrónico de **no-reply@login.awsapps.com** titulado «Invitación a unirte» AWS IAM Identity Center. Acepte la invitación para activar su cuenta de usuario.

1. En el mensaje, elija la URL situada debajo de la URL de **su portal de AWS acceso**.

   Esto lo llevará a la pantalla de inicio de AWS sesión.  
![\[Pantalla que muestra la pantalla de AWS inicio de sesión.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-enduser-signin.png)

1. Introduce tus credenciales y selecciona **Iniciar sesión**.

   Esto le llevará a la Portal de acceso a AWS, que muestra una lista de las aplicaciones disponibles.

1. Elija la aplicación para su aplicación web Transfer Family.

## Experiencia de usuario para usuarios de proveedores de identidad externos
<a name="end-user-3p"></a>

Si su organización no utilizó AWS IAM Identity Center para configurar a sus usuarios, su experiencia de incorporación dependerá de la aplicación de proveedor de identidad que haya utilizado para configurar sus usuarios finales. Tras autenticarse e iniciar sesión, la interfaz de la aplicación web será la misma que la que se describe en la siguiente sección.

**nota**  
Si un usuario pertenece a varios grupos de Active Directory que tienen concesiones para el mismo bucket de Amazon S3, el bucket aparece varias veces en la interfaz de la aplicación web. Esto se debe a que la aplicación web enumera todas las concesiones de nivel superior asociadas al UID o GID del usuario, incluidas las concesiones duplicadas para el mismo depósito. Para evitar la duplicación de listados, los administradores pueden consolidar varias concesiones para que cada usuario tenga solo una concesión por ubicación de Amazon S3.

## Interfaz de usuario final de Transfer Family
<a name="end-user-interface"></a>

Una vez que te hayas autenticado e iniciado sesión, podrás interactuar con la aplicación web.

Hay cuatro vistas principales.
+ **Página de inicio:** su página de inicio muestra las ubicaciones de S3 a las que puede acceder, así como los permisos de cada una de ellas. Una *ubicación* de S3 es un depósito o prefijo de S3, que puede definir al utilizar S3 Access Grants. Esta es la vista inicial para los usuarios que muestra los recursos de S3 de nivel raíz a los que tienen acceso los usuarios finales y los permisos de cada ubicación de S3.  
![\[Pantalla que muestra la ubicación de inicio del usuario final de una aplicación web.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-enduser-home.png)
+ **Detalles de ubicación**: esta vista permite a los usuarios examinar archivos y carpetas en S3, así como cargar o descargar archivos.
+ **Acción de ubicación:** después de elegir una acción (como **Cargar**), se abre otra vista de la ubicación del archivo.
+ **Puntos suspensivos verticales:** el icono de puntos suspensivos verticales abre el menú **Acciones**.

## Acciones disponibles
<a name="end-user-actions"></a>

La mayoría de las acciones están disponibles en el menú **Acciones**. Para la otra acción principal, la descarga de archivos, se utiliza el icono de descarga después de seleccionar un archivo (actualmente, solo se puede descargar un archivo a la vez).

![\[Pantalla que muestra los archivos y sus correspondientes iconos de descarga.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-enduser-download.png)


Desde una carpeta, utilice el menú **Acciones** para realizar cualquiera de las siguientes tareas:
+ Copie uno o más archivos a otra ubicación.
+ Crear una carpeta.
+ Elimine uno o más archivos.
+ Cargue uno o más archivos.
+ Sube una carpeta completa (incluidas las subcarpetas, si las hubiera).
+ Selecciona una carpeta y navega hasta ella. A continuación, puede realizar cualquiera de las acciones enumeradas anteriormente.
+ Ordenar por página.
+ Filtra por nombre de archivo o carpeta por carpeta y subcarpetas.

![\[Pantalla que muestra una carpeta de ejemplo para el usuario final de una aplicación web.\]](http://docs.aws.amazon.com/es_es/transfer/latest/userguide/images/webapp-enduser-actions.png)
