

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.

# Administración de catálogos
<a name="catalogs"></a>

AWS Service Catalog proporciona una interfaz para gestionar carteras, productos y restricciones desde una consola de administrador.

**nota**  
Para realizar cualquiera de las tareas de esta sección, debe tener permisos de administrador para AWS Service Catalog. Para obtener más información, consulte [Identity and Access Management en AWS Service Catalog](controlling_access.md). 

**Topics**
+ [Administración de carteras](catalogs_portfolios.md)
+ [Administración de productos](catalogs_products.md)
+ [Uso de AWS Service Catalog restricciones](constraints.md)
+ [AWS Service Catalog Acciones de servicio](using-service-actions.md)
+ [Añadir AWS Marketplace productos a su cartera](catalogs_marketplace-products.md)
+ [Uso CloudFormation StackSets](using-stacksets.md)
+ [Administración de presupuestos](catalogs_budgets.md)

# Administración de carteras
<a name="catalogs_portfolios"></a>

Puede crear, ver y actualizar carteras en la página **Carteras** de la consola del administrador de AWS Service Catalog .

**Topics**
+ [Creación, visualización y eliminación de carteras](#portfoliomgmt-menu)
+ [Ver los detalles de la cartera](#portfoliomgmt-portdetails)
+ [Crear y eliminar carteras](portfoliomgmt-create.md)
+ [Adición de productos](portfoliomgmt-products.md)
+ [Adición de restricciones](portfoliomgmt-constraints.md)
+ [Conceder acceso a los usuarios](catalogs_portfolios_users.md)
+ [Uso compartido de carteras](catalogs_portfolios_sharing_how-to-share.md)
+ [Cómo compartir e importar carteras](catalogs_portfolios_sharing.md)

## Creación, visualización y eliminación de carteras
<a name="portfoliomgmt-menu"></a>

La página **Carteras** muestra una lista de carteras que se han creado en la región actual. Esta página se utiliza para crear nuevas carteras, ver los detalles de una de ellas o eliminarlas de la cuenta. 

**Cómo ver la página **Carteras****

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Seleccione otra región según sea necesario.

1. Si eres nuevo en ella, verás la página AWS Service Catalog de inicio. AWS Service Catalog Elija **Get started** para crear una cartera. Siga las instrucciones para crear la primera cartera y, a continuación, vaya a la página **Carteras**.

Mientras lo usa AWS Service Catalog, puede volver a la página **Portafolios** en cualquier momento; elija **Service Catalog** en la barra de navegación y, a continuación, elija **Portafolios**.

## Ver los detalles de la cartera
<a name="portfoliomgmt-portdetails"></a>

En la consola AWS Service Catalog de administración, la página de **detalles de la cartera** muestra la configuración de una cartera. Utilice esta página para gestionar los productos de la cartera, conceder a los usuarios el acceso a los productos TagOptions y aplicar las restricciones.

**Para ver la página **Portfolio details****

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Elija la cartera que desea administrar.

# Crear y eliminar carteras
<a name="portfoliomgmt-create"></a>

Utilice la página **Carteras** para crear y eliminar carteras. 

**Para crear una nueva cartera**

1. En el menú de navegación izquierdo, seleccione **Carteras**.

1. Seleccione **Crear cartera**. 

1. En la página **Crear cartera**, introduzca la información solicitada.

1. Selecciona **Crear**. AWS Service Catalog crea la cartera y muestra los detalles de la cartera.

**Para eliminar una cartera**
**nota**  
Solo puede eliminar carteras *locales*. Puede eliminar carteras *importadas* (compartidas), pero no puede eliminar carteras importadas. 

Antes de poder eliminar una cartera, debe eliminar todos sus productos, restricciones, grupos, funciones, usuarios, recursos compartidos y TagOptions. Para ello, abra una cartera para ver los **Detalles de la cartera**. A continuación, seleccione una pestaña para eliminarlas.
**nota**  
Para evitar errores, elimine las restricciones de la cartera *antes* de eliminar cualquier producto. 

1. En el menú de navegación izquierdo, seleccione **Carteras**.

1. Seleccione la cartera que desea eliminar.

1. Elija **Eliminar**. Solo puede eliminar carteras *locales*. Si está intentando eliminar una cartera *importada* (compartida), el menú **Acciones** no está disponible. 

1. En la ventana de confirmación, elija **Delete**.

# Adición de productos
<a name="portfoliomgmt-products"></a>

 Puede añadir productos a una cartera cargando un producto nuevo directamente a una cartera existente o asociando un producto existente de su catálogo a la cartera. 

**nota**  
 Al crear un AWS Service Catalog producto, puede cargar una CloudFormation plantilla o un archivo de configuración de Terraform. La CloudFormation plantilla se almacena en un depósito de Amazon Simple Storage Service (Amazon S3) y el nombre del depósito comienza por ***"cf-templates*** -». También debe tener permiso para recuperar objetos de buckets adicionales al aprovisionar un producto. Para obtener más información, consulte [Crear productos](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/productmgmt-cloudresource.html#productmgmt-cloudresource-troubleshooting). 

## Cómo añadir un nuevo producto
<a name="portfoliomgmt-products-new"></a>

Los productos nuevos se agregan directamente desde la página **Detalles de la cartera**. Cuando crees un producto desde esta página, lo AWS Service Catalog añades a la cartera actualmente seleccionada. 

**Para agregar un nuevo producto**

1.  Vaya a la página **Carteras** y, a continuación, elija el nombre de la cartera a la que desea agregar el producto.

1. En la página de **Detalles de la cartera**, amplíe la sección **Productos** y, a continuación, elija **Subir nuevo producto**. 

1. En **Enter product details**, escriba lo siguiente:
   + **Product name**: el nombre del producto.
   + **Descripción del producto** (opcional): descripción del producto. Esta descripción se muestra en el listado de productos para ayudarle a elegir el producto correcto. 
   + **Descripción**: la descripción completa. Esta descripción se muestra en el listado de productos para ayudarle a elegir el producto correcto.
   + **Propietario o distribuidor**: el nombre o la dirección de correo electrónico del propietario. La información de contacto del distribuidor es opcional.
   + **Proveedor** (opcional): el nombre del publicador de la aplicación. Este campo le permite ordenar la lista de productos para que les resulte más fácil buscar los que necesitan.

1. En la página **Version details**, escriba lo siguiente:
   + **Elegir plantilla**: en el caso de CloudFormation los productos, elija su propio archivo de CloudFormation plantilla, una plantilla de una unidad local o una URL que apunte a una plantilla almacenada en Amazon S3, a una plantilla ARN de CloudFormation Stack existente o a un archivo de plantilla almacenado en un repositorio externo.

     Para los productos de Terraform, seleccione su propio archivo de plantilla, un archivo de configuración tar.gz de una unidad local o una URL que apunte a una plantilla almacenada en Amazon S3, o un archivo de configuración tar.gz almacenado en un repositorio externo.
   + **Nombre de la versión** (opcional): el nombre de la versión del producto (por ejemplo, "v1", "v2beta"). No se permiten espacios. 
   + **Description** (opcional): una descripción de la versión del producto, incluidas sus diferencias respecto a la anterior.

1. En **Enter support details**, escriba lo siguiente:
   + **Email contact** (opcional): la dirección de correo electrónico para comunicar problemas del producto.
   + **Enlace de soporte** (opcional): la dirección URL del sitio donde los usuarios pueden encontrar información de soporte o presentar tickets de servicio. La dirección URL debe comenzar por `http://` o `https://`. Los administradores son responsables de mantener la precisión y el acceso a la información de soporte.
   + **Descripción del soporte** (opcional): una descripción de cómo debe utilizar los datos de **Contactos de correo electrónico** y del **Enlace de soporte**.

1. Seleccione **Crear producto**.

## Adición de un producto existente
<a name="portfoliomgmt-products-existing"></a>

Puede agregar productos existentes a una cartera desde tres ubicaciones: la lista de **Carteras**, la página **Detalles de la cartera** y la **lista de productos**.

**Para agregar un producto existente a una cartera**

1. Vaya a la página **Carteras**. 

1. Seleccione una cartera. A continuación, seleccione **Acciones**: **añadir producto a la cartera**. 

1.  Elija un producto y, a continuación, haga clic en **Añadir producto a la cartera**. 

## Eliminación de un producto de una cartera
<a name="portfoliomgmt-products-remove"></a>

Si ya no desea utilizar un producto, elimínelo de la cartera. El producto seguirá estando disponible en el catálogo desde la página **Productos** y podrá agregarlo a otras carteras. Puede eliminar varios productos de una cartera al mismo tiempo.

**Para eliminar un producto de una cartera**

1. Vaya a la página **Carteras** y, a continuación, elija la cartera que contiene el producto. Se abrirá la página **Detalles de la cartera**. 

1. Amplíe la sección **Productos**. 

1. Seleccione uno o más productos y, a continuación, elija **Eliminar**. 

1. Confirme su elección.

# Adición de restricciones
<a name="portfoliomgmt-constraints"></a>

Debería añadir restricciones para controlar la forma en que los usuarios interactúan con los productos. Para obtener más información sobre los tipos de restricciones que AWS Service Catalog admite, consulte[Uso de AWS Service Catalog restricciones](constraints.md). 

 Las restricciones se agregan a los productos después de haberlos colocado en una cartera.

**Para agregar una restricción a un producto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Elija **Carteras** y seleccione una cartera. 

1. En la página de detalles de la cartera, amplíe la sección **Crear restricción** y elija **Añadir restricción**. 

1. En **Producto**, seleccione el producto al que se aplicará la restricción.

1. En **Tipo de restricción**, elija una de las siguientes opciones:

   **Lanzamiento**: permite asignar una función de IAM al producto que se utiliza para aprovisionar los AWS recursos. Para obtener más información, consulte [AWS Service Catalog Restricciones de lanzamiento](constraints-launch.md).

   **Notificación**: le permite transmitir notificaciones de productos a un tema de Amazon SNS. Para obtener más información, consulte [AWS Service Catalog Restricciones de notificación](constraints-notification.md).

   **Plantilla**: permite limitar las opciones que los usuarios finales tienen a su disposición cuando lanzan un producto. Una plantilla es un archivo de texto con formato JSON que contiene una o varias reglas. Las reglas se añaden a la CloudFormation plantilla utilizada por el producto. Para obtener más información, consulte [Reglas de restricciones de plantilla](reference-template_constraint_rules.md).

    **Stack Set**: le permite configurar la implementación del producto en todas las cuentas y regiones mediante CloudFormation StackSets. Para obtener más información, consulte [AWS Service Catalog Restricciones del conjunto de pilas](constraints-stackset.md).

   **Actualizar etiquetas**: le permite actualizar las etiquetas una vez que se haya aprovisionado el producto. Para obtener más información, consulte [AWS Service Catalog Restricciones de actualización de etiqueta ](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/constraints-resourceupdate.html).

1.  Elija **Continuar** e introduzca la información que se le pida.

**Para editar una restricción**

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

1. Elija **Carteras** y seleccione una cartera. 

1. En la página **Detalles de la cartera**, amplíe la sección **Crear restricción** y seleccione la restricción que desee editar.

1. Seleccione **Editar restricciones**.

1. Edite la restricción según sea necesario y elija **Guardar**.

# Conceder acceso a los usuarios
<a name="catalogs_portfolios_users"></a>

Ofrezca a los usuarios acceso a las carteras a través de grupos o roles. La mejor manera de proporcionar acceso a las carteras a varios usuarios es incluirlos en un grupo de IAM y concederles acceso a dicho grupo. De esta forma, basta con agregar o eliminar usuarios del grupo para administrar el acceso a la cartera. Para obtener más información, consulte [Usuarios y grupos de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_WorkingWithGroupsAndUsers.html) en la *Guía del usuario de IAM*.

Además de acceder a una cartera, los usuarios también deben tener acceso a la consola de usuario AWS Service Catalog final. Para conceder acceso a la consola, puede aplicar los permisos de IAM. Para obtener más información, consulte [Identity and Access Management en AWS Service Catalog](controlling_access.md).

Si desea compartir una cartera y sus entidades principales con otras cuentas, puede asociar los nombres de entidad principal (grupos, roles o usuarios) a la cartera. Los nombres de entidad principal se comparten con la cartera y se utilizan en las cuentas de los destinatarios para conceder el acceso a los usuarios finales.

**Para conceder a usuarios o grupos acceso a una cartera**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1.  En el panel de navegación, seleccione **Administración** y, a continuación, seleccione **Carteras**. 

1.  Elija una cartera a la que desee conceder acceso a grupos, roles o usuarios. AWS Service Catalog dirige a la página **de detalles del portafolio**. 

1.  En la página **Detalles de la cartera**, elija la pestaña **Acceso**. 

1.  En **Acceso a la cartera**, seleccione **Conceder acceso**. 

1.  En **Tipo**, seleccione **Nombre de entidad principal** y, a continuación, seleccione el tipo de **grupo/**, **rol/** o **usuario/**. Puede agregar hasta 9 nombres de entidad principal. 

1.  Seleccione **Conceder acceso** para asociar la entidad principal a la cartera actual. 

**Para eliminar el acceso a una cartera**

1. En la página **Detalles de la cartera**, elija un grupo, rol o nombre de usuario.

1. Elija **Eliminar acceso**.

# Uso compartido de carteras
<a name="catalogs_portfolios_sharing_how-to-share"></a>

Para permitir que un AWS Service Catalog administrador de otra AWS cuenta distribuya sus productos a los usuarios finales, comparta su AWS Service Catalog cartera con ellos mediante el uso account-to-account compartido o AWS Organizations.

 Cuando compartes una cartera mediante account-to-account sharing u Organizations, compartes una *referencia* de esa cartera. Los productos y las restricciones de la cartera importada se mantienen sincronizados con los cambios realizados en la *cartera compartida*, es decir, la cartera original que se ha compartido. 

El destinatario no puede cambiar los productos o las restricciones, pero puede agregar acceso de AWS Identity and Access Management a los usuarios finales. 

**nota**  
 No puede compartir un recurso compartido. Esto incluye carteras que contienen un producto compartido. 

## Account-to-account compartir
<a name="portfolio-sharing-account"></a>

Para completar estos pasos, debe obtener el ID de cuenta de la AWS cuenta de destino. Puedes encontrar el ID en la página **Mi cuenta** Consola de administración de AWS de la cuenta de destino.

**Para compartir un portafolio con una AWS cuenta**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. En el menú de navegación de la izquierda, seleccione **Carteras** y, a continuación, seleccione la cartera que desea compartir. En el menú **Acciones**, seleccione **Compartir**.

1. En **Introducir el ID** de cuenta, introduzca el ID de AWS cuenta de la cuenta con la que está compartiendo. (Opcional) Selecciona [TagOption Compartir](#tagoptions-share). A continuación, elija **Compartir**. 

1. Envía la URL al AWS Service Catalog administrador de la cuenta de destino. La dirección URL abre la página **Importar cartera** y proporciona automáticamente el ARN de la cartera compartida.

### Importación de una cartera
<a name="catalogs_portfolios_sharing_importing"></a>

Si el AWS Service Catalog administrador de otra AWS cuenta comparte una cartera con usted, impórtela a su cuenta para que pueda distribuir sus productos a sus usuarios finales.

No es necesario importar una cartera si la cartera se ha compartido a través de ella AWS Organizations.

Para importar la cartera, el administrador debe facilitarle una ID de cartera.

Para ver todas las carteras importadas, abra la AWS Service Catalog consola en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/). En la página **Cartera**, seleccione la pestaña **Importadas**. Revise la tabla de **Carteras importadas**. 

## Compartir con AWS Organizations
<a name="portfolio-sharing-organizations"></a>

Puede compartir AWS Service Catalog carteras utilizando AWS Organizations. 

 En primer lugar, debe decidir si está compartiendo desde la cuenta de administración o desde una cuenta de administrador delegado. Si no desea compartir desde su cuenta de administración, registre una cuenta de administrador delegada y úsela para compartirla. Para obtener más información, consulte [Registrar un administrador delegado](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html) en la *Guía del usuario de CloudFormation *. 

 A continuación, debe decidir con quién compartir. Puede compartir con las siguientes entidades: 
+ Una cuenta de organización.
+ Una unidad organizativa (OU).
+ La propia organización. (Esto comparte con todas las cuentas de la organización.)

### Cómo compartir desde una cuenta de administración
<a name="sharing-from-master"></a>

Puede compartir una cartera con una organización cuando use su estructura organizativa o ingrese el ID de un nodo organizacional.

****Para compartir un portafolio con una organización mediante la estructura organizativa****

1. Abra la AWS Service Catalog consola en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. En la página **Carteras**, seleccione la cartera que desea compartir. En el menú **Acciones**, seleccione **Compartir**.

1. Seleccione **AWS Organizations** y filtre según su estructura organizativa. 

   Puede seleccionar el nodo raíz para compartir la cartera con toda la organización, una unidad organizativa (OU) principal, una OU secundaria o una AWS cuenta de su organización. 

   Al compartir con una unidad organizativa principal, se comparte la cartera con todas las cuentas y unidades organizativas secundarias de esa unidad organizativa principal. 

   Puede seleccionar **Ver solo AWS cuentas** para ver una lista de todas las AWS cuentas de su organización.

****Para compartir una cartera con una organización, introduzca el ID del nodo organizativo****

1. Abre la AWS Service Catalog consola en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. En la página **Carteras**, seleccione la cartera que desea compartir. En el menú **Acciones**, seleccione **Compartir**. 

1. Seleccione el **Nodo de la organización**. 

   Seleccione si desea compartir con toda la organización, una cuenta de AWS de su organización o una unidad organizativa. 

   Introduce el ID del nodo organizativo que has seleccionado, que encontrarás en la AWS Organizations consola en [ https://console.aws.amazon.com/organizations/](https://console.aws.amazon.com/organizations/).

### Compartir desde una cuenta de administrador delegado
<a name="delegated-admin"></a>

 La cuenta de administración de una organización puede registrar y anular el registro de otras cuentas como administradores delegados para la organización. 

Un administrador delegado puede compartir AWS Service Catalog los recursos de su organización del mismo modo que lo hace una cuenta de administración. Están autorizados para crear, eliminar y compartir carteras. 

Para registrar o anular el registro de un administrador delegado, debe usar la API o la CLI desde la cuenta de administración. Para obtener más información consulte [RegisterDelegatedAdministrator](https://docs.aws.amazon.com/organizations/latest/APIReference/API_RegisterDelegatedAdministrator.html) y [DeregisterDelegatedAdministrator](https://docs.aws.amazon.com/organizations/latest/APIReference/API_DeregisterDelegatedAdministrator.html) en la *Referencia de la API de AWS Organizations *. 

**nota**  
Antes de poder designar a un delegado, el administrador debe llamar a [https://docs.aws.amazon.com/servicecatalog/latest/dg/API_EnableAWSOrganizationsAccess.html](https://docs.aws.amazon.com/servicecatalog/latest/dg/API_EnableAWSOrganizationsAccess.html).

El procedimiento para compartir una cartera desde una cuenta de administrador delegada es el mismo que compartir desde una cuenta maestra, como se ve anteriormente en [Cómo compartir desde una cuenta de administración](#sharing-from-master).

 Si se anula el registro de un miembro como administrador delegado, ocurre lo siguiente: 
+ Se eliminan las acciones de cartera creadas a partir de esa cuenta.
+ Ya no pueden crear nuevas acciones de cartera.

**nota**  
 Si la cartera y las acciones creadas por un administrador delegado no se eliminan después de anular el registro del administrador delegado, registre y anule el registro del administrador delegado de nuevo. Esto eliminará la cartera y las acciones creadas por esa cuenta. 

### Mover cuentas dentro de su organización
<a name="move-account"></a>

Si traslada una cuenta dentro de su organización, es posible que cambien AWS Service Catalog las carteras compartidas con la cuenta. 

Las cuentas solo tienen acceso a las carteras compartidas con la organización o unidad organizativa de destino. 

## Compartir TagOptions al compartir carteras
<a name="tagoptions-share"></a>

Como administrador, puede crear un recurso compartido para TagOptions incluirlo. TagOptions son pares clave-valor que permiten a los administradores:
+ Defina y aplique la taxonomía de las etiquetas.
+ Defina las opciones de etiquetas y asócielas a productos y carteras.
+ Comparta las opciones de etiquetas asociadas a carteras y productos con otras cuentas.

Al añadir o eliminar opciones de etiquetas en la cuenta principal, el cambio aparece automáticamente en las cuentas de los destinatarios. En las cuentas de los destinatarios, cuando un usuario final aprovisiona un producto TagOptions, debe elegir valores para las etiquetas que se convierten en etiquetas del producto aprovisionado. 

En las cuentas de destinatarios, los administradores pueden asociar productos locales adicionales TagOptions a su cartera importada para hacer cumplir las reglas de etiquetado específicas de cada cuenta.

**nota**  
Para compartir una cartera, necesitas el ID de AWS cuenta del consumidor. Busca el ID de la AWS cuenta en **Mi cuenta** en la consola.

**nota**  
Si a TagOption tiene un valor único, lo AWS aplica automáticamente durante el proceso de aprovisionamiento.

**Para compartir TagOptions al compartir carteras**

1. En el menú de navegación izquierdo, seleccione **Carteras**.

1. En **Carteras locales**, seleccione y abra una cartera.

1. Seleccione **Compartir** de la lista anterior y, a continuación, pulse el botón **Compartir**.

1. Elige compartir con otra AWS cuenta u organización.

1. Introduzca el número de identificación de la cuenta de 12 dígitos, seleccione **Habilitar** y, a continuación, seleccione **Compartir**.

   La cuenta que ha compartido aparece en la sección **Cuentas compartidas con**. Indica si están TagOptions habilitados.

También puede actualizar una acción de cartera para incluirla TagOptions. Todo lo TagOptions que pertenece a la cartera y al producto ahora se comparte en esta cuenta.

**Para actualizar una cartera, comparta para incluir TagOptions**

1. En el menú de navegación izquierdo, seleccione **Carteras**.

1. En **Cartera local**, seleccione y abra una cartera.

1. Seleccione **Compartir** de la lista anterior.

1. En **Cuentas compartidas con**, seleccione un ID de cuenta y, a continuación, seleccione **Acciones**.

1. Seleccione **Actualizar dejar de compartir** o **Dejar de compartir**.

   Al seleccionar **Actualizar dejar de compartir,** selecciona **Activar** para iniciar el uso compartido TagOptions. La cuenta que ha compartido aparece en la sección **Cuentas compartidas con**.

   Al seleccionar **Dejar de compartir**, confirma que ya no desea compartir la cuenta.

## Compartir los nombres de entidad principal al compartir carteras
<a name="principal-name-share"></a>

Como administrador, puede crear una cartera compartida que incluya los nombres de entidad principales. Los nombres de entidad principales son nombres para grupos, funciones y usuarios que los administradores pueden especificar en una cartera y luego compartir con la cartera. Al compartir la cartera, AWS Service Catalog verifica si esos nombres principales ya existen. Si existen, asocia AWS Service Catalog automáticamente los directores de IAM coincidentes a la cartera compartida para conceder el acceso a los usuarios.

**nota**  
Al asociar una entidad principal a una cartera, puede producirse una posible escalada de privilegios cuando esa cartera se comparte con otras cuentas. En el caso de un usuario de una cuenta receptora que *no* sea AWS Service Catalog administrador, pero que aún pueda crear directores (usuarios/funciones), ese usuario puede crear un director de IAM que coincida con la asociación de nombres principales de la cartera. Aunque es posible que este usuario no sepa a qué nombres principales están asociados AWS Service Catalog, es posible que pueda adivinar quién es el usuario. Si esta posible ruta de escalación es motivo de preocupación, se AWS Service Catalog recomienda utilizarla `PrincipalType` como`IAM`. Con esta configuración, el `PrincipalARN` ya debe existir en la cuenta del destinatario antes de poder asociarla.

Al añadir o eliminar nombres principales en la cuenta principal, esos cambios se aplican AWS Service Catalog automáticamente a la cuenta del destinatario. Los usuarios de la cuenta destinataria pueden entonces realizar tareas en función de su rol:
+ Los **usuarios finales** pueden aprovisionar, actualizar y cancelar el producto de la cartera. 
+ Los **administradores** pueden asociar más entidades principales de IAM a su cartera importada para permitir el acceso a los usuarios finales específicos de esa cuenta. 

**nota**  
El uso compartido del nombre principal solo está disponible para AWS Organizations.

**Cómo compartir los nombres de entidad principal al compartir carteras**

1. En el menú de navegación izquierdo, seleccione **Carteras**. 

1. En **Carteras locales**, seleccione la cartera que desea compartir.

1. En el menú **Acciones**, elija **Compartir**.

1. Seleccione una organización en AWS Organizations.

1. Seleccione toda la **Raíz de la organización**, una **unidad organizativa (OU)** o un **miembro de la organización**.

1. En la configuración de **compartir**, habilite la opción de **compartir entidad principal**.

También puede actualizar una cartera compartida para incluir el nombre de entidad principal. Esto comparte todos los nombres de entidad principal que pertenecen a esa cartera con la cuenta del destinatario. 

**Cómo actualizar una cartera compartida para habilitar o deshabilitar los nombres de entidad principal**

1. En el menú de navegación izquierdo, seleccione **Carteras**. 

1. En **Cartera local**, seleccione la cartera que desea actualizar. 

1. Elija la pestaña **Compartir**. 

1. Seleccione el recurso compartido que desea actualizar y, a continuación, seleccione **Compartir**. 

1. Seleccione **Actualizar el recurso compartido** y, a continuación, seleccione **Activar** para iniciar el uso compartido principal. AWS Service Catalog a continuación, comparte los nombres principales en las cuentas de los destinatarios. 

**Deshabilitar** el uso compartido de la entidad principal si desea dejar de compartir los nombres de entidad principal con las cuentas de los destinatarios.

### Uso de caracteres comodín al compartir nombres de entidad principal
<a name="wildcards-principal-names"></a>

AWS Service Catalog permite conceder acceso a la cartera a los nombres de los principales (usuario, grupo o rol) de IAM con caracteres comodín, como «\$1» o «?». El uso de patrones comodín permite cubrir varios nombres de entidad principal de IAM a la vez. La ruta del ARN y el nombre de la entidad principal permiten caracteres comodín ilimitados. 

Ejemplos de un comodín de ARN **aceptable**:
+ **arn:aws:iam:::role/ResourceName\$1\$1**
+ **arn:aws:iam:::role/\$1/ResourceName\$1?**

Ejemplos de un comodín de ARN **inaceptable**:
+ **arn:aws:iam:::\$1/ResourceName**

En el formato ARN de entidad principal de IAM (**arn:partition:iam:::resource-type/resource-path/resource-name**), los valores válidos incluyen **usuario/**, **grupo/**, o **rol/**. Los caracteres “?” y “\$1” solo se permiten después del tipo de recurso en el segmento de identificador del recurso. Puede usar caracteres especiales en cualquier parte del identificador del recurso.

El carácter “\$1” también coincide con el carácter “/”, lo que permite que se formen rutas *dentro* del identificador del recurso. Por ejemplo:

**arn:aws:iam:::role/**\$1**/ResourceName\$1?** coincide tanto con **arn:aws:iam:::role/pathA/pathB/ResourceName\$11** como con **arn:aws:iam:::role/pathA/ResourceName\$11**. 

# Cómo compartir e importar carteras
<a name="catalogs_portfolios_sharing"></a>

Para que tus AWS Service Catalog productos estén disponibles para usuarios que no pertenecen a la tuya Cuentas de AWS, como los usuarios que pertenecen a otras organizaciones o a otros miembros Cuentas de AWS de tu organización, compartes tus carteras con ellos. Puede compartir de varias formas, como account-to-account compartir, compartir de forma organizativa e implementar catálogos mediante conjuntos apilados.

 Antes de compartir sus productos y carteras con otras cuentas, debe decidir si desea compartir una referencia del catálogo o implementar una copia del catálogo en cada cuenta de destinatario. Tenga en cuenta que si implementa una copia, debe volver a implementar si hay actualizaciones que desea propagar a las cuentas de destinatario. 

Puede utilizar conjuntos de pilas para implementar el catálogo en muchas cuentas al mismo tiempo. Si quieres compartir una referencia (una versión importada de tu portafolio que permanece sincronizada con la original), puedes usar la opción account-to-account compartir o puedes compartir usando AWS Organizations. 

Si quieres usar conjuntos apilados para desplegar una copia de tu catálogo, consulta [Cómo configurar un catálogo de productos estándar AWS Service Catalog de la empresa en varias regiones y múltiples cuentas](https://aws.amazon.com/blogs/mt/how-to-set-up-a-multi-region-multi-account-catalog-of-company-standard-aws-service-catalog-products/).

Al compartir una cartera o AWS Organizations permitir que un AWS Service Catalog administrador de otra AWS cuenta importe la cartera a su cuenta y distribuya los productos entre los usuarios finales de esa cuenta. account-to-account 

Esta *cartera importada* no es una copia independiente. Los productos y las restricciones de la cartera importada se mantienen sincronizados con los cambios realizados en la *cartera compartida*, es decir, la cartera original que se ha compartido. El *administrador destinatario*, el administrador con el que compartes una cartera, no puede cambiar los productos ni las restricciones, pero puede añadir acceso AWS Identity and Access Management (IAM) para los usuarios finales. Para obtener más información, consulte [Conceder acceso a los usuarios](catalogs_portfolios_users.md).

El administrador del destinatario puede distribuir los productos a los usuarios finales que pertenecen a su AWS cuenta de las siguientes maneras:
+ Agregue usuarios, grupos y funciones a la cartera importada.
+ Al añadir productos de la cartera importada a una **cartera local**, una cartera independiente que el administrador del destinatario crea y que pertenece a su AWS cuenta. A continuación, el administrador destinatario agrega los usuarios, grupos y roles a la cartera local. Cualquier restricción que se haya aplicado a los productos de la cartera compartida también está presente en la cartera local. El administrador del destinatario de la cartera local puede añadir restricciones adicionales, pero no puede eliminar las restricciones que se importaron originalmente de la cartera compartida.

Cuando se agregan productos o restricciones a la cartera compartida o se eliminan productos o restricciones de ella, el cambio se propaga a todas las instancias importadas de la cartera. Por ejemplo, si elimina un producto de la cartera compartida, dicho producto también se eliminará de la cartera importada. También se eliminará de todas las carteras locales a la que se haya agregado el producto importado. Si un usuario final ha lanzado un producto antes de eliminarlo, el producto aprovisionado por el usuario final continuará ejecutándose, pero ya no estará disponible para lanzamientos futuros.

Si se aplica una restricción de lanzamiento a un producto de una cartera compartida, esta se propaga a todas las instancias importadas del producto. Para anular la restricción de lanzamiento, el administrador destinatario puede agregar el producto a una cartera local y, a continuación, aplicarle una restricción de lanzamiento diferente. La restricción de lanzamiento que se encuentre en vigor establece un rol de lanzamiento para el producto. 

Una *función de lanzamiento* es una función de IAM que se AWS Service Catalog utiliza para aprovisionar AWS recursos (como EC2 instancias de Amazon o bases de datos de Amazon RDS) cuando un usuario final lanza el producto. Como administrador, puede elegir designar un ARN de rol de lanzamiento específico o un nombre de rol local. Si utiliza el ARN del rol, el rol se utilizará incluso si el usuario final pertenece a una cuenta de AWS diferente de la que posee el rol de lanzamiento. Si utiliza un nombre de rol local, se utilizará el rol de IAM con ese nombre en la cuenta del usuario final.

Para obtener más información sobre las restricciones de lanzamiento y los roles de lanzamiento, consulte [AWS Service Catalog Restricciones de lanzamiento](constraints-launch.md). La AWS cuenta propietaria de la función de lanzamiento aprovisiona los AWS recursos y esta cuenta incurre en los cargos por el uso de esos recursos. Para obtener más información, consulte [AWS Service Catalog Precios](https://aws.amazon.com/servicecatalog/pricing/).

En este vídeo se muestra cómo compartir carteras entre cuentas en. AWS Service Catalog

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/BVSohYOppjk/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/BVSohYOppjk)


**nota**  
No se pueden volver a compartir los productos de una cartera que se ha importado o compartido. 

**nota**  
Las importaciones de carteras deben realizarse en la misma región entre la cuenta de administración y la dependiente. 

## Relación entre las carteras compartidas e importadas
<a name="shared-imported-portfolios-relationship"></a>

Esta tabla se indica la relación entre una cartera importada y una cartera compartida, así como las acciones que un administrador que importe una cartera de productos puede y no puede realizar con esa cartera y con los productos que contiene.


| Elemento de la cartera compartida | Relación con la cartera importada | El administrador destinatario puede | El administrador destinatario no puede | 
| --- | --- | --- | --- | 
| Productos y versiones de productos |  Se heredan. Si el creador de la cartera agrega o elimina productos de la cartera compartida, el cambio se propaga a la cartera importada.  |  Agregar productos importados a las carteras locales. Los productos se mantienen sincronizados con la cartera compartida.  |  Cargar o agregar productos a cartera importada ni quitar productos de ella.  | 
| Restricciones de lanzamiento |  Se heredan. Si el creador de la cartera agrega restricciones de lanzamiento a un *producto compartido* o las elimina de él, el cambio se propaga a todas las instancias importadas del producto. Si el administrador destinatario agrega un producto importado a una cartera *local*, la restricción de lanzamiento importada no se aplica a la cartera compartida.  | En una cartera local, el administrador puede aplicar restricciones de lanzamiento que afecten al lanzamiento local del producto. |  Agregar restricciones de lanzamiento a la cartera importada o quitarlas de ella.  | 
| Restricciones de plantilla |  Se heredan. Si el creador de la cartera agrega una restricción de plantilla a un producto compartido o la elimina de él, el cambio se propaga a todas las instancias importadas del producto. Si el administrador destinatario agrega un producto importado a una cartera local, las restricciones de plantilla importadas no se trasladan a la cartera local.  |  En una cartera local, el administrador puede agregar restricciones de plantilla que se aplicarán al producto local.  |  Eliminar las restricciones de plantilla importadas.  | 
| Usuarios, grupos y roles | No se heredan. | Agregar usuarios, grupos y funciones que están presentes en la cuenta de AWS del administrador. | No se usa. | 

# Administración de productos
<a name="catalogs_products"></a>

Puede crear productos, actualizar productos creando una nueva versión basada en una plantilla actualizada y agrupar los productos en carteras para distribuírselos a los usuarios.

Las nuevas versiones de los productos se propagan a todos los usuarios que tienen acceso al producto a través de una cartera. Cuando se distribuye una actualización, los usuarios finales pueden actualizar los productos aprovisionados existentes.

**Topics**
+ [Ver la página de productos](#productmgmt-menu)
+ [Creación de productos](productmgmt-cloudresource.md)
+ [Adición de productos a las carteras](catalogs_portfolios_adding-products.md)
+ [Actualización de productos](productmgmt-update.md)
+ [Sincronizar productos con archivos de plantilla desde GitHub GitHub Enterprise o Bitbucket](git-synced-sc-products.md)
+ [Eliminación de productos](productmgmt-delete.md)
+ [Administración de versiones](managing-versions.md)

## Ver la página de productos
<a name="productmgmt-menu"></a>

Los productos se administran desde la página de **lista de productos** de la AWS Service Catalog consola de administración.

**Cómo ver la página **Lista de productos****

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Seleccione **Lista de productos**.

# Creación de productos
<a name="productmgmt-cloudresource"></a>

 Los productos se crean desde la página de **productos** de la AWS Service Catalog consola de administración. 

**nota**  
La creación de productos de Terraform requiere una configuración adicional, incluyendo un motor de aprovisionamiento de Terraform y un rol de lanzamiento. Para obtener más información, consulte [Primeros pasos con un producto de Terraform](getstarted-Terraform.md). 

**Para crear un AWS Service Catalog producto nuevo**

1. Vaya a la página **Lista de productos**. 

1. Seleccione **Crear producto** y, a continuación, seleccione **Crear producto**.

1. **Detalles del producto**: le permite elegir el tipo de producto que desea crear. AWS Service Catalog admite los CloudFormation tipos de productos Terraform Cloud y External (compatible con Terraform Community Edition). Los detalles del producto también contienen los metadatos que aparecen al buscar y ver productos en una lista o página de detalles. Introduzca lo siguiente:
   + **Product name**: el nombre del producto.
   +  **Descripción del producto**: la descripción se muestra en la lista de productos para ayudarlo a elegir el producto correcto.
   + **Propietario**: la persona u organización que publica este producto. El propietario puede ser el nombre de su organización de TI o del administrador.
   + **Distribuidor** (opcional): el nombre del publicador de la aplicación. Este campo le permite ordenar la lista de productos para que les resulte más fácil buscar los que necesitan.

1. Los **detalles de la versión** le permiten añadir el archivo de plantilla y crear el producto. Introduzca lo siguiente:
   +  **Elegir un método**: hay cuatro formas de añadir un archivo de plantilla. 
     + **Use un archivo de plantilla local**: cargue una CloudFormation plantilla o un archivo de configuración tar.gz de Terraform desde una unidad local. 
     + **Usar una URL de Amazon S3**: especifique una URL que apunte a una plantilla de CloudFormation o a un archivo de configuración tar.gz de Terraform almacenado en Amazon S3. Si especifica una dirección URL de Amazon S3, debe comenzar con `https://`.
     + **Usa un repositorio externo: especifica tu repositorio** de código GitHub, el de GitHub Enterprise o el de Bitbucket. AWS Service Catalog te permite sincronizar los productos con los archivos de plantilla. En el caso de los productos de Terraform, el formato del archivo de plantilla debe ser un único archivo archivado en Tar y comprimido en Gzip.
     + **Utilizar una CloudFormation pila existente**: introduce el ARN de una pila existente CloudFormation . Este método no es compatible con los productos de Terraform Cloud o externos. 
   +  **Nombre de la versión** (opcional): el nombre de la versión del producto (por ejemplo, "v1", "v2beta"). No se permiten espacios.
   +  **Descripción** (opcional): una descripción de la versión del producto, incluidas sus diferencias respecto a otras versiones.
   +  **Guía**: se gestiona en la pestaña de versiones de la página **Detalles del producto**. Cuando se crea una versión del producto (durante el flujo de trabajo de creación del producto), la guía para esa versión se establece de forma predeterminada. Para obtener más información sobre la guía, consulte [Administración de versiones](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/managing-versions.html).

1. Los **detalles de soporte** identifican la organización de su empresa y proporcionan un punto de contacto para el soporte. Introduzca lo siguiente:
   + **Email contact** (opcional): la dirección de correo electrónico para comunicar problemas del producto.
   + **Enlace de soporte** (opcional): la dirección URL del sitio donde los usuarios pueden encontrar información de soporte o presentar tickets de servicio. La dirección URL debe comenzar por `http://` o `https://`. Los administradores son responsables de mantener la precisión y el acceso a la información de soporte.
   + **Descripción del soporte** (opcional): una descripción de cómo debe utilizar los datos de **Contactos de correo electrónico** y del enlace **Soporte**.

1.  **Administrar etiquetas** (opcional): además de usar etiquetas para categorizar sus recursos, también puede usarlas para autentificar sus permisos para crear este recurso. 

1. **Crear producto**: cuando haya completado el formulario, seleccione **Crear producto**. Transcurridos unos segundos, el producto aparecerá en la página **Lista de productos**. Puede que necesite actualizar el navegador para ver el producto.

También puedes usarlo CodePipeline para crear y configurar una canalización para implementar la plantilla de producto AWS Service Catalog y entregar los cambios que hayas realizado en tu repositorio de origen. Para obtener más información, consulte el [tutorial: Cómo crear una canalización que se implemente](https://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-S3-servicecatalog.html) en. AWS Service Catalog

Puede definir las propiedades de los parámetros en su plantilla CloudFormation o en la de Terraform y aplicar esas reglas durante el aprovisionamiento. Estas propiedades pueden definir la longitud mínima y máxima, los valores mínimos y máximos, los valores permitidos y una expresión regular para el valor. AWS Service Catalog emite una advertencia durante el aprovisionamiento si el valor proporcionado no se ajusta a la propiedad del parámetro. Para obtener más información sobre las propiedades de los parámetros, consulte [Parámetros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) en la *Guía del usuario de CloudFormation *.

## Resolución de problemas
<a name="productmgmt-cloudresource-troubleshooting"></a>

 Debe tener permiso para recuperar objetos de los buckets de Amazon S3. De lo contrario, podría encontrarse con el siguiente error al lanzar o actualizar un producto. 

```
Error: failed to process product version s3 access denied exception
```

 Si aparece este mensaje, asegúrese de tener permiso para recuperar objetos de los siguientes buckets: 
+  El bucket en el que se almacena la plantilla de artefacto de aprovisionamiento. 
+  El depósito que comienza por "***cf-templates-\$1***" y donde AWS Service Catalog se almacena la plantilla de artefactos de aprovisionamiento. 
+  ***El depósito interno que comienza por "sc-\$1" y donde se almacenan los metadatos.*** AWS Service Catalog No podrá ver este bucket desde su cuenta. 

 El siguiente ejemplo de política muestra los permisos mínimos necesarios para recuperar objetos de los buckets mencionados anteriormente. 

```
{
          "Sid": "VisualEditor1",
          "Effect": "Allow",
          "Action": "s3:GetObject*",
          "Resource": [
              "arn:aws:s3:::YOUR_TEMPLATE_BUCKET",
              "arn:aws:s3:::YOUR_TEMPLATE_BUCKET/*",
              "arn:aws:s3:::cf-templates-*",
              "arn:aws:s3:::cf-templates-*/*",
              "arn:aws:s3:::sc-*",
              "arn:aws:s3:::sc-*/*"
          ]
      }
```

# Adición de productos a las carteras
<a name="catalogs_portfolios_adding-products"></a>

 Puede agregar productos a cualquier cantidad de carteras. Cuando un producto se actualiza, todas las carteras que lo contienen (incluso las carteras compartidas) reciben automáticamente la nueva versión. 

**Para agregar un producto del catálogo a una cartera**

1.  Vaya a la página **Lista de productos**. 

1.  Seleccione un producto y, a continuación, seleccione **Acciones**. En el menú desplegable, seleccione **Añadir producto a la cartera**. Se le dirigirá a la página **Añadir *name-of-product* a la cartera.** 

1.  Elija una cartera y, a continuación, haga clic en **la Añadir producto a cartera**. 

Al agregar un producto de Terraform a una cartera, el producto requiere una restricción de lanzamiento. Debe seleccionar un rol de IAM de su cuenta, introducir un ARN de rol de IAM o introducir un nombre de rol. Si especifica un nombre del rol, cuando una cuenta utilice la restricción de lanzamiento, se utilizará el rol de IAM con ese nombre en la cuenta. Esto permite que las restricciones del rol de lanzamiento sean independientes de la cuenta, de modo que pueda crear menos recursos por cuenta compartida. Para obtener información e instrucciones, consulte [Paso 6: añadir una restricción de lanzamiento a su producto de Terraform](getstarted-launchconstraint-Terraform.md). 

 Una cartera puede contener numerosos productos que sean una combinación de tipos de productos CloudFormation y los de Terraform. 

# Actualización de productos
<a name="productmgmt-update"></a>

 Cuando actualice la plantilla de un producto, cree una nueva versión del producto. Una nueva versión de un producto se pone automáticamente a disposición de todos los usuarios que tienen acceso a la cartera que lo contiene. 

**nota**  
Al actualizar un producto existente, no puede cambiar el tipo de producto (CloudFormation o Teraform). Por ejemplo, si actualiza un CloudFormation producto, no puede reemplazar la CloudFormation plantilla existente por un archivo de configuración tar.gz de Terraform. Debe actualizar el archivo de CloudFormation plantilla existente con un archivo de CloudFormation plantilla nuevo.

 Los usuarios finales que actualmente están ejecutando un producto aprovisionado de la versión anterior del producto pueden actualizarlo para obtener la versión más reciente. Cuando está disponible una nueva versión de un producto, los usuarios pueden utilizar el comando **Actualizar productos aprovisionados** de las páginas **Lista de productos aprovisionados** o **Detalles de productos aprovisionados**. 

Antes de crear una nueva versión de un producto, le AWS Service Catalog recomienda que pruebe las actualizaciones del producto en CloudFormation o en el motor Terraform para asegurarse de que funcionan correctamente.

**Para crear una nueva versión de un producto**

1.  Vaya a la página **Lista de productos**. 

1.  Seleccione el producto que desea actualizar. Se le redirigirá a la página *Detalles del producto*. 

1.  En la página *Detalles del producto*, amplíe la sección **Versiones**; y, a continuación, elija **Crear nueva versión**. 

1.  En **Detalles de la versión**, realice lo siguiente: 
   + **Elegir plantilla**: hay cuatro formas de añadir un archivo de plantilla. 

     *Utilice un archivo de plantilla local*: cargue una CloudFormation plantilla o un archivo de configuración tar.gz de Terraform desde una unidad local. 

     *Usar una URL de Amazon S3*: especifique una URL que apunte a una plantilla de CloudFormation o a un archivo de configuración tar.gz de Terraform almacenado en Amazon S3. Si especifica una dirección URL de Amazon S3, debe comenzar por https://.

     *Usa un repositorio externo: especifica tu repositorio* de código GitHub, el de GitHub Enterprise o el de Bitbucket. AWS Service Catalog te permite sincronizar productos con archivos de plantilla. En el caso de los productos de Terraform, el formato del archivo de plantilla debe ser un único archivo archivado en Tar y comprimido en Gzip.

     *Utilizar una CloudFormation pila existente*: introduce el ARN de una pila existente CloudFormation . Este método no es compatible con los productos de Terraform Cloud o externos. 
   + **Título de la versión**: el nombre de la versión del producto (por ejemplo, "v1", "v2beta"). No se permiten espacios. 
   + **Descripción** (opcional): una descripción de la versión del producto, incluidas sus diferencias respecto a la anterior.

1. Seleccione **Crear versión del producto**.

 También se puede utilizar CodePipeline para crear y configurar una canalización en la que implementar la plantilla de producto y entregar los cambios en el repositorio de origen. AWS Service Catalog Para obtener más información, consulte el [tutorial: Cómo crear una canalización que se implemente](https://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-S3-servicecatalog.html) en. AWS Service Catalog

# Sincronizar productos con archivos de plantilla desde GitHub GitHub Enterprise o Bitbucket
<a name="git-synced-sc-products"></a>

AWS Service Catalog te permite sincronizar productos con archivos de plantilla que se gestionan a través de un proveedor de repositorios externo. AWS Service Catalog se refiere a los productos con este tipo de conexión de plantilla como productos *sincronizados con Git*. Las opciones de repositorio incluyen GitHub GitHub Enterprise o Bitbucket. Tras autorizarte Cuenta de AWS con una cuenta de repositorio externa, puedes crear nuevos AWS Service Catalog productos o actualizar los existentes para sincronizarlos con un archivo de plantilla del repositorio. Cuando se realizan cambios en el archivo de plantilla y se guardan en el repositorio (por ejemplo, mediante git-push), los detecta AWS Service Catalog automáticamente y crea una nueva versión del producto (artefacto). 

**Topics**
+ [Permisos necesarios para sincronizar productos con archivos de plantilla externos](#required-perms-synced-repo)
+ [Creación de una conexión de cuenta](#create-synced-product)
+ [Visualización de las conexiones de productos sincronizados con Git](#view-repo-sync)
+ [Cómo actualizar las conexiones de productos sincronizados con Git](#update-repo-sync)
+ [Eliminar conexiones de productos sincronizados con Git](#delete-repo-sync)
+ [Sincronizar los productos de Terraform con archivos de plantilla de GitHub GitHub Enterprise o Bitbucket](#git-synced-Terraform)
+ [Región de AWS soporte para productos sincronizados con Git](git-sync-supported-regions.md)

## Permisos necesarios para sincronizar productos con archivos de plantilla externos
<a name="required-perms-synced-repo"></a>

Puedes usar la siguiente política AWS Identity and Access Management (IAM) como plantilla para que AWS Service Catalog los administradores puedan sincronizar los productos con los archivos de plantillas de un repositorio externo. Esta política incluye los permisos necesarios tanto de como CodeConnections de AWS Service Catalog. AWS Service Catalog recomienda copiar la política de plantillas que aparece a continuación y utilizar también la [política AWS Service Catalog`AWSServiceCatalogAdminFullAccess` gestionada](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/security-iam-awsmanpol) al habilitar los productos sincronizados en el repositorio. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CodeStarAccess",
            "Effect": "Allow",
            "Action": [
            "codestar-connections:UseConnection",
            "codestar-connections:PassConnection",
            "codestar-connections:CreateConnection",
            "codestar-connections:DeleteConnection",
            "codestar-connections:GetConnection",
            "codestar-connections:ListConnections",
            "codestar-connections:ListInstallationTargets",
            "codestar-connections:GetInstallationUrl",
            "codestar-connections:StartOAuthHandshake",
            "codestar-connections:UpdateConnectionInstallation",
            "codestar-connections:GetIndividualAccessToken"
            ],
            "Resource": "arn:aws:codestar-connections:*:*:connection/*"
        },
        {
        "Sid": "CreateSLR",
        "Effect": "Allow",
        "Action": "iam:CreateServiceLinkedRole",
        "Resource": "arn:aws:iam::*:role/aws-service-role/sync.servicecatalog.amazonaws.com/AWSServiceRoleForServiceCatalogArtifactSync",
        "Condition": {
        "StringLike": {
        "iam:AWSServiceName": "sync.servicecatalog.amazonaws.com"
                }
            }
        }
    ]
}
```

------

## Creación de una conexión de cuenta
<a name="create-synced-product"></a>

Antes de sincronizar un archivo de plantilla con un AWS Service Catalog producto, debes crear y autorizar una conexión única. account-to-account Esta conexión se utiliza para especificar los detalles del repositorio que contiene el archivo de plantilla deseado. Puede crear una conexión mediante la AWS Service Catalog consola, la CodeConnections consola AWS Command Line Interface (CLI) o CodeConnections APIs. 

Tras establecer una conexión, puede utilizar la AWS Service Catalog consola, la AWS Service Catalog API o la CLI para crear un AWS Service Catalog producto sincronizado. AWS Service Catalog los administradores pueden crear AWS Service Catalog productos nuevos o actualizar los existentes a partir de un archivo de plantilla en un repositorio o una sucursal. Si se realiza un cambio en el repositorio, lo detecta AWS Service Catalog automáticamente y crea una nueva versión del producto. Las versiones anteriores del producto se mantienen hasta el límite de versiones prescrito y se les asigna un estado **obsoleto**. 

Además, crea AWS Service Catalog automáticamente un rol vinculado a un servicio (SLR) una vez creada la conexión. Esta SLR permite a AWS Service Catalog detectar cualquier cambio en el archivo de plantilla que se haya registrado en el repositorio. La SLR también permite crear automáticamente nuevas versiones de productos AWS Service Catalog para los productos sincronizados. Para obtener más información sobre los permisos y la funcionalidad de SLR, consulte [Funciones vinculadas a servicios para AWS Service Catalog](#required-perms-synced-repo). 

**Para crear un nuevo producto sincronizado con Git**

1. En el panel de navegación izquierdo, elija **Lista de productos** y, a continuación, **Crear un producto**. 

1. Introducción de los **detalles del producto**. 

1. En Detalles de la versión, selecciona **Especificar tu repositorio de código mediante un AWS CodeStar proveedor** y, a continuación, selecciona el enlace **Crear una nueva AWS CodeStar conexión**. 

1. Después de crear la conexión, actualice la lista de conexiones y, a continuación, seleccione la nueva conexión. Especifique los detalles del repositorio, incluyendo el **repositorio**, la **rama** y la **ruta del archivo de plantilla**. 

   Para obtener más información sobre cómo usar archivos de configuración de Terraform, consulte [Sincronizar los productos de Terraform con archivos de plantilla de GitHub GitHub Enterprise o Bitbucket](#git-synced-Terraform). 

   1. (Opcional al crear un recurso de AWS Service Catalog producto nuevo) En la sección **Support Details**, añada metadatos para el producto.

   1. (Opcional al crear un nuevo recurso de AWS Service Catalog producto) En la sección **Etiquetas**, elija **Añadir nueva etiqueta** e introduzca los pares **clave** y **valor**.

1. Elija **Crear nuevo producto**. 

**Cómo crear varios productos sincronizados con Git**

1. En el panel de navegación izquierdo de la AWS Service Catalog consola, selecciona **Lista de productos** y, a continuación, selecciona **Crear varios productos gestionados por git**. 

1. Introducir los **detalles comunes del producto**. 

1. En detalles del repositorio externo, seleccione una **conexión de AWS CodeStar ** y, a continuación, especifique el **repositorio** y la **rama**. 

1. En el panel Añadir productos, introduzca la **ruta del archivo de plantilla** y el **Nombre del producto**. Seleccione **Añadir un nuevo elemento** y siga añadiendo los productos que desee.

1. Tras añadir todos los productos deseados, seleccione **Crear productos de forma masiva**. 

**Para conectar un AWS Service Catalog producto existente a un repositorio externo**

1. En el panel de navegación izquierdo de la AWS Service Catalog consola, selecciona **Lista de productos** y, a continuación, selecciona **Conectar productos a un repositorio externo**. 

1. En la página Seleccionar productos, seleccione los productos que desea conectar a un repositorio externo y, a continuación, seleccione **Siguiente**. 

1. En la página Especificar los detalles del origen, seleccione una AWS CodeStar conexión existente y, a continuación, especifique el **repositorio**, la **sucursal** y la **ruta del archivo de plantilla**. 

1. Elija **Siguiente**. 

1. En la página Revisar y enviar, verifique los detalles de la conexión y, a continuación, seleccione **Conectar los productos a un repositorio externo**. 

## Visualización de las conexiones de productos sincronizados con Git
<a name="view-repo-sync"></a>

Puede usar la AWS Service Catalog consola, la API o ver AWS CLI los detalles de la conexión al repositorio. En el caso de los AWS Service Catalog productos que están vinculados a un archivo de plantilla, puedes recuperar información sobre la conexión al repositorio y la última vez que la plantilla se sincronizó con el producto desde el **estado de última sincronización**. 

**nota**  
Puede ver la información del repositorio y el **Estado de la última sincronización** a nivel de producto. Los usuarios deben tener permisos de IAM CodeConnections APIs para ver los detalles del repositorio. Consulte [los permisos necesarios para sincronizar AWS Service Catalog productos con archivos de plantilla para](#required-perms-synced-repo) obtener más información sobre la política requerida para estos permisos de IAM. 

**Para ver los detalles de la conexión y el repositorio mediante Consola de administración de AWS**

1. En el menú de navegación izquierdo, elija **Lista de productos**. 

1. Seleccione el producto de la lista. 

1. En la página **Producto**, vaya a la sección **Detalles de la fuente del producto**. 

1. Para ver el ID de revisión de origen de una versión del producto, seleccione el enlace **Última versión creada**. La sección **Detalles de la versión** muestra el ID de revisión de origen. 

**Para ver los detalles de la conexión y el repositorio mediante AWS CLI**

Desde AWS CLI, ejecute los siguientes comandos: 

`$ aws servicecatalog describe-product-as-admin`

`$ aws servicecatalog describe-provisioning-artifact`

`$ aws servicecatalog search-product-as-admin`

`$ aws servicecatalog list-provisioning-artifacts`

## Cómo actualizar las conexiones de productos sincronizados con Git
<a name="update-repo-sync"></a>

Puedes actualizar las conexiones de cuentas existentes y los productos sincronizados con Git mediante la AWS Service Catalog consola, la AWS Service Catalog API o. AWS CLI

Para obtener información sobre cómo conectar un AWS Service Catalog producto existente a un archivo de plantilla, consulta Cómo [crear nuevas conexiones de productos sincronizados](#create-synced-product) con Git. 

**Para actualizar los productos existentes a productos sincronizados con Git**

1. En el panel de navegación de la izquierda, seleccione **Lista de productos** y, a continuación, seleccione una de las siguientes opciones:
   + Para actualizar un **solo producto**, seleccione el producto, vaya a la sección **Detalles de la fuente del producto** y, a continuación, seleccione **Editar detalles**. 
   + Para actualizar **varios productos**, seleccione **Conectar productos a un repositorio externo**, seleccione hasta diez productos y, a continuación, seleccione **Siguiente**. 

1. En la sección **Detalles de la fuente del producto**, realice las siguientes actualizaciones: 
   + Especifique la conexión. 
   + Especifique el repositorio 
   + Especifique la ramificación. 
   + Asigne un nombre al archivo de plantilla. 

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

**nota**  
Para los productos que aún no están conectados a un repositorio externo, puedes usar la opción **Conectar a un repositorio externo** que aparece en la alerta en la parte superior de la página de información del producto después de seleccionar el producto. 

También puedes usar la AWS Service Catalog consola o para AWS CLI 
+ Conectar un AWS Service Catalog producto existente a un archivo de plantilla en un repositorio externo
+ Actualice los metadatos del producto, incluyendo el nombre, la descripción y las etiquetas del producto. 
+ Reconfigure (actualice la sincronización para usar una fuente de repositorio diferente) una conexión para un producto de AWS Service Catalog previamente conectado. 

**Para actualizar los detalles de la conexión y del repositorio mediante AWS Service Catalog la consola**

1. En el panel de navegación izquierdo de la AWS Service Catalog consola, elija **Lista de productos** y, a continuación, seleccione un producto que esté conectado actualmente a un repositorio externo. 

1. En la sección **Detalles de la fuente del producto**, seleccione **Editar fuente del producto**. 

1. En la sección **Detalles de la fuente del producto**, especifique el nuevo repositorio deseado. 

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

**Para actualizar los detalles de la conexión y del repositorio mediante AWS CLI**

A partir de la AWS CLI ejecución de los `$ aws servicecatalog update-provisioning-artifact` comandos `$ aws servicecatalog update-product` y. 

## Eliminar conexiones de productos sincronizados con Git
<a name="delete-repo-sync"></a>

Puedes eliminar una conexión entre un AWS Service Catalog producto y un archivo de plantilla mediante la AWS Service Catalog consola, la CodeConnections API o AWS CLI. Al desconectar un producto de un archivo de plantilla, el AWS Service Catalog producto sincronizado pasa a ser un producto gestionado de forma habitual. Tras desconectar el producto, si el archivo de plantilla se modifica y se archiva en el repositorio anteriormente conectado, los cambios *no* se reflejan. Para volver a conectar un AWS Service Catalog producto a un archivo de plantilla de un repositorio externo, consulte [Actualización de conexiones y productos sincronizados AWS Service Catalog](). 

**Para desconectar un producto sincronizado con Git mediante la consola AWS Service Catalog**

1. En el Consola de administración de AWS, selecciona **Lista de productos en el panel** de navegación izquierdo. 

1. Seleccione un producto de la lista. 

1. En la página **Producto**, vaya a la sección **Detalles de la fuente del producto**. 

1. Seleccione **Desconectar**. 

1. Confirme la acción y, a continuación, seleccione **Desconectar**. 

**Para desconectar un producto sincronizado con Git mediante AWS CLI**

Desde AWS CLI, ejecuta el comando. `$ aws servicecatalog update-product` En la entrada `ConnectionParameters`, elimine la conexión especificada. 

**Para eliminar una conexión mediante la CodeConnections API o AWS CLI**

En la CodeConnections API o AWS CLI, ejecute el `$ aws codestar-connections delete-connection` comando. 

## Sincronizar los productos de Terraform con archivos de plantilla de GitHub GitHub Enterprise o Bitbucket
<a name="git-synced-Terraform"></a>

Al crear un producto sincronizado con Git mediante un archivo de configuración de Terraform, la ruta del archivo solo acepta el formato tar.gz. No se aceptan los formatos de carpetas de Terraform en la ruta del archivo. 

# Región de AWS soporte para productos sincronizados con Git
<a name="git-sync-supported-regions"></a>

AWS Service Catalog es compatible con los productos sincronizados con Git tal y Regiones de AWS como se indica en la siguiente tabla. 


****  

| Región de AWS nombre | Región de AWS identidad | Soporte para productos sincronizados con Git | 
| --- | --- | --- | 
| Este de EE. UU. (Norte de Virginia) | us-east-1 | Sí | 
| Este de EE. UU. (Ohio) | us-east-2 | Sí | 
| Oeste de EE. UU. (Norte de California) | us-west-1 | Sí | 
| Oeste de EE. UU. (Oregón) | us-west-2 | Sí | 
| África (Ciudad del Cabo) | af-south-1 | No | 
| Asia-Pacífico (Hong Kong) | ap-east-1 | No | 
| Asia-Pacífico (Yakarta) | ap-southeast-3 | No | 
| Asia-Pacífico (Mumbai) | ap-south-1 | Sí | 
| Asia-Pacífico (Osaka) | ap-northeast-3 | No | 
| Asia-Pacífico (Seúl) | ap-northeast-2 | Sí | 
| Asia-Pacífico (Singapur) | ap-southeast-1 | Sí | 
| Asia-Pacífico (Sídney) | ap-southeast-2 | Sí | 
| Asia-Pacífico (Tokio) | ap-northeast-1 | Sí | 
| Canadá (centro) | ca-central-1 | Sí | 
| Europa (Fráncfort) | eu-central-1 | Sí | 
| Europa (Irlanda) | eu-west-1 | Sí | 
| Europa (Londres) | eu-west-2 | Sí | 
| Europa (Milán) | eu-south-1 | No | 
| Europa (París) | eu-west-3 | Sí | 
| Europa (Estocolmo) | eu-north-1 | Sí | 
| Medio Oriente (Baréin) | me-south-1 | No | 
| América del Sur (São Paulo) | sa-east-1 | Sí | 
| AWS GovCloud (Este de EE. UU.) | us-gov-east-1 | No | 
| AWS GovCloud (Estados Unidos-Oeste) | us-gov-west-1 | No | 

# Eliminación de productos
<a name="productmgmt-delete"></a>

Al eliminar un producto, se AWS Service Catalog eliminan todas las versiones del producto de todas las carteras que contienen el producto. 

AWS Service Catalog permite eliminar un producto mediante la AWS Service Catalog consola o AWS CLI. Para eliminar correctamente un producto, primero debe disociar todos los recursos asociados al producto. Entre los ejemplos de asociaciones de recursos de productos se incluyen las asociaciones de carteras TagOptions, los presupuestos y las acciones de servicio. 

**importante**  
 No se puede recuperar un producto después de que se haya eliminado. 

**Para eliminar un producto mediante la AWS Service Catalog consola**

1.  Vaya a la página **Carteras** y seleccione la cartera que contiene el producto que desea eliminar. 

1.  Seleccione el producto que desea eliminar y, a continuación, seleccione **Eliminar** en la esquina superior derecha del panel de productos. 

1. En el caso de los productos *sin recursos asociados*, confirme el producto que desea eliminar introduciendo **eliminar** en el cuadro de texto y, a continuación, seleccione **Eliminar**. 

   Para los productos *con recursos asociados*, continúe con el paso 4. 

1. En la ventana **Eliminar producto**, consulta la tabla de **asociaciones**, que muestra todos los recursos asociados al producto. AWS Service Catalog intenta desasociar estos recursos al eliminar el producto. 

1. Confirme que desea eliminar el producto y eliminar todos sus recursos asociados; para ello, escriba **eliminar** en el cuadro de texto. 

1. Seleccione **Disociar y eliminar**. 

Si AWS Service Catalog no puede disociar todos los recursos del producto, el producto no se eliminará. La ventana **Eliminar producto** muestra el número de disociaciones fallidas y una descripción de cada error. Para obtener más información sobre cómo resolver las disociaciones de recursos fallidas al eliminar un producto, consulte *Resolver las disociaciones de recursos fallidas al eliminar un producto* a continuación. 

**Topics**
+ [Eliminar productos mediante el AWS CLI](product-delete-cli.md)
+ [Resolver las disociaciones de recursos fallidas al eliminar un producto](product-delete-exception.md)

# Eliminar productos mediante el AWS CLI
<a name="product-delete-cli"></a>

AWS Service Catalog le permite usar [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)(AWS CLI) para eliminar productos de su cartera. AWS CLI Se trata de una herramienta de código abierto que permite interactuar con los AWS servicios mediante comandos de la consola de la línea de comandos. La función AWS Service Catalog force-delete requiere un [AWS CLI alias](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-alias.html), que es un atajo que se puede crear AWS CLI para abreviar los comandos o scripts que se utilizan con frecuencia. 

## Requisitos previos
<a name="product-delete-cli-requirements"></a>
+ Instalar y configurar la AWS CLI. Para obtener más información, consulte [Instalación o actualización de la versión más reciente de la AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) y [Configuración básica](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html). Utilice una AWS CLI versión mínima de 1.11.24 o 2.0.0. 
+ El alias CLI para eliminar el producto requiere un terminal compatible con bash y el procesador JSON de línea de comandos JQ. Para obtener más información sobre la instalación del procesador JSON de línea de comandos, consulte [Descargar jq](https://stedolan.github.io/jq/download/). 
+ Cree un AWS CLI alias para agrupar las llamadas a la `Disassociation` API, lo que le permitirá eliminar un producto con un solo comando. 

Para eliminar correctamente un producto, primero debe disociar todos los recursos asociados al producto. Algunos ejemplos de asociaciones de recursos de productos incluyen las asociaciones de carteras, presupuestos, opciones de etiquetas y acciones de servicio. Cuando se utiliza la CLI para eliminar un producto, el alias `force-delete-product` de la CLI le permite llamar a la API `Disassociate` para disociar cualquier recurso que pudiera impedir la API `DeleteProduct`. Esto evita tener que llamar por separado a las disociaciones individuales. 

**nota**  
Las rutas de los archivos que se muestran en los procedimientos siguientes pueden variar en función del sistema operativo que utilice para realizar estas acciones. 

## Crear un AWS CLI alias para eliminar AWS Service Catalog productos
<a name="product-delete-cli-alias"></a>

Cuando se utiliza AWS CLI para eliminar un AWS Service Catalog producto, el `force-delete-product` alias de la CLI le permite llamar a la `Disassociate` API para desasociar cualquier recurso que impida la `DeleteProduct` llamada. 

**Cree un `alias` archivo en la carpeta AWS CLI de configuración**

1. En la AWS CLI consola, navegue hasta la carpeta de configuración. De forma predeterminada, la carpeta de configuración es `~/.aws/` en Linux o macOS o `%USERPROFILE%\.aws\` en Windows. 

1. Cree una subcarpeta denominada `cli` mediante la navegación de archivos o introduciendo el siguiente comando en su terminal preferido: 

   ```
                $ mkdir -p ~/.aws/cli
   ```

   La ruta predeterminada resultante de la carpeta `cli` es `~/.aws/cli/` en Linux o macOS o `%USERPROFILE%\.aws\cli` en Windows. 

1. En la nueva carpeta `cli`, cree un archivo de texto sin extensión con el nombre `alias`. Puede crear el archivo `alias` mediante la navegación de archivos o introduciendo el siguiente comando en la terminal que prefiera: 

   ```
                 $ touch ~/.aws/cli/alias
   ```

1. Introduzca `[toplevel]` en la primera línea.

1. Guarde el archivo. 

A continuación, puede añadir el force-delete-product alias al `alias` archivo pegando manualmente el script del alias en el archivo o utilizando un comando en la ventana del terminal. 

**Añada manualmente el force-delete-product alias al archivo `alias`**

1. En la AWS CLI consola, vaya a la carpeta AWS CLI de configuración y abra el `alias` archivo. 

1. Introduzca el siguiente alias de código en el archivo, debajo de la línea `[toplevel]`: 

   ```
                [command servicecatalog]
             	 force-delete-product =
             	   !f() {
             	     if [ "$#" -ne 1 ]; then
             	         echo "Illegal number of parameters"
             	         exit 1
             	     fi
             	 
             	     if [[ "$1" != prod-* ]]; then
             	        echo "Please provide a valid product id."
             	        exit 1
             	     fi
             	 
             	     productId=$1
             	     describeProductAsAdminResponse=$(aws servicecatalog describe-product-as-admin --id $productId)
             	     listPortfoliosForProductResponse=$(aws servicecatalog list-portfolios-for-product --product-id $productId)
             	 
             	     tagOptions=$(echo "$describeProductAsAdminResponse" | jq -r '.TagOptions[].Id')
             	     budgetName=$(echo "$describeProductAsAdminResponse" | jq -r '.Budgets[].BudgetName')
             	     portfolios=$(echo "$listPortfoliosForProductResponse" | jq -r '.PortfolioDetails[].Id')
             	     provisioningArtifacts=$(echo "$describeProductAsAdminResponse" | jq -r '.ProvisioningArtifactSummaries[].Id')
             	     provisioningArtifactServiceActionAssociations=()
             	 
             	     for provisioningArtifactId in $provisioningArtifacts; do
             	       listServiceActionsForProvisioningArtifactResponse=$(aws servicecatalog list-service-actions-for-provisioning-artifact --product-id $productId --provisioning-artifact-id $provisioningArtifactId)
             	       serviceActions=$(echo "$listServiceActionsForProvisioningArtifactResponse" | jq -r '[.ServiceActionSummaries[].Id] | join(",")')
             	       if [[ -n "$serviceActions" ]]; then
             	         provisioningArtifactServiceActionAssociations+=("${provisioningArtifactId}:${serviceActions}")
             	       fi
             	     done
             	 
             	     echo "Before deleting a product, the following associated resources must be disassociated. These resources will not be deleted. This action may take some time, depending on the number of resources being disassociated."
             	 
             	     echo "Portfolios:"
             	     for portfolioId in $portfolios; do
             	       echo "\t${portfolioId}"
             	     done
             	 
             	     echo "Budgets:"
             	     if [[ -n "$budgetName" ]]; then
             	       echo "\t${budgetName}"
             	     fi
             	 
             	     echo "Tag Options:"
             	     for tagOptionId in $tagOptions; do
             	       echo "\t${tagOptionId}"
             	     done
             	 
             	     echo "Service Actions on Provisioning Artifact:"
             	     for association in "${provisioningArtifactServiceActionAssociations[@]}"; do
             	       echo "\t${association}"
             	     done
             	 
             	     read -p "Are you sure you want to delete ${productId}? y,n "
             	     if [[ ! $REPLY =~ ^[Yy]$ ]]; then
             	        exit
             	     fi
             	 
             	     for portfolioId in $portfolios; do
             	       echo "Disassociating ${portfolioId}"
             	       aws servicecatalog disassociate-product-from-portfolio --product-id $productId --portfolio-id $portfolioId
             	     done
             	 
             	     if [[ -n "$budgetName" ]]; then
             	       echo "Disassociating ${budgetName}"
             	       aws servicecatalog disassociate-budget-from-resource --budget-name "$budgetName" --resource-id $productId
             	     fi
             	 
             	     for tagOptionId in $tagOptions; do
             	       echo "Disassociating ${tagOptionId}"
             	       aws servicecatalog disassociate-tag-option-from-resource --tag-option-id $tagOptionId --resource-id $productId
             	     done
             	 
             	     for association in "${provisioningArtifactServiceActionAssociations[@]}"; do
             	       associationPair=(${association//:/ })
             	       provisioningArtifactId=${associationPair[0]}
             	       serviceActionsList=${associationPair[1]}
             	       serviceActionIds=${serviceActionsList//,/ }
             	       for serviceActionId in $serviceActionIds; do
             	         echo "Disassociating ${serviceActionId} from ${provisioningArtifactId}"
             	         aws servicecatalog disassociate-service-action-from-provisioning-artifact --product-id $productId --provisioning-artifact-id $provisioningArtifactId --service-action-id $serviceActionId
             	       done
             	     done
             	 
             	     echo "Deleting product ${productId}"
             	     aws servicecatalog delete-product --id $productId
             	 
             	   }; f
   ```

1. Guarde el archivo. 

**Utilice la ventana del terminal para añadir el force-delete-product alias al `alias` archivo**

1. Abra una ventana del terminal y ejecute el siguiente comando

   `$ cat >> ~/.aws/cli/alias`

1. Pegue el script del alias en la ventana del terminal y, a continuación, pulse *CTRL\$1D* para salir del comando `cat`. 

**Llama al force-delete-product alias**

1. Ejecute los siguientes comandos en una ventana de su terminal para borrar el alias del producto.

   `$ aws servicecatalog force-delete-product {product-id} `

   El siguiente ejemplo muestra el comando alias `force-delete-product` y su respuesta resultante. 

   ```
                 $ aws servicecatalog force-delete-product prod-123
   ```

   ```
                 Before deleting a product, the following associated resources must be disassociated. These resources will not be deleted. This action may take some time, depending on the number of resources being disassociated.
                 Portfolios:
                   port-123
                 Budgets:
                     budgetName
                 Tag Options:
                     tag-123
                 Service Actions on Provisioning Artifact:
                     pa-123:act-123
                 Are you sure you want to delete prod-123? y,n
   ```

1. Introduzca `y` para confirmar que desea eliminar el producto. 

Tras eliminar correctamente el producto, la ventana de terminal mostrará los siguientes resultados

```
          Disassociating port-123
          Disassociating budgetName
          Disassociating tag-123
          Disassociating act-123 from pa-123
          Deleting product prod-123
```

## Recursos adicionales
<a name="product-delete-cli-resources"></a>

Para obtener más información sobre AWS CLI el uso de alias y la eliminación de AWS Service Catalog productos, consulta los siguientes recursos:
+ [Creación y uso de AWS CLI alias](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-alias.html) en la guía del usuario *AWS Command Line Interface (CLI)*. 
+ AWS CLI repositorio de [alias (repositorio](https://github.com/awslabs/awscli-aliases) git). 
+ [Eliminación de productos AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/productmgmt-delete.html). 
+ [AWS re:Invent 2016: The Effective AWS CLI User on](https://youtu.be/Xc1dHtWa9-Q?t=1593). *YouTube* 

# Resolver las disociaciones de recursos fallidas al eliminar un producto
<a name="product-delete-exception"></a>

Si su intento anterior de [eliminar un producto](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/productmgmt-delete.html) falló debido a excepciones de disociación de recursos, consulte la lista de excepciones y sus soluciones a continuación. 

**nota**  
Si ha cerrado la ventana **Eliminar productos** antes de recibir el mensaje de disociación fallida de un recurso, puede seguir los pasos del uno al tres de la sección correspondiente *Eliminar un producto* para volver a abrir la ventana.

**Para resolver un error en la disociación de un recurso**

En la ventana **Eliminar producto**, revise la columna **Estado** de la tabla de asociaciones. Identifique la excepción de disociación de recursos fallida y las soluciones sugeridas:


****  

| Tipo de excepción de estado | Causa | Resolución | 
| --- | --- | --- | 
| Product prod-\$1\$1\$1\$1 | AWS Service Catalog no se pudo eliminar el producto porque el producto todavía tiene presupuestos asociados TagOptions, al menos uno ProvisioningArtifact con acciones asociadas, el producto sigue asignado a una cartera, el producto tiene usuarios o tiene restricciones.  | Intente eliminar el producto de nuevo. | 
| Usuario: username no está autorizado para ejecutar: | El usuario que intenta eliminar el producto no tiene los permisos necesarios para disociar los recursos del producto.  | AWS Service Catalog recomienda ponerse en contacto con el administrador de su cuenta para obtener más información sobre cómo desasociar los recursos de productos que actualmente no tiene permiso para desvincular.  | 

# Administración de versiones
<a name="managing-versions"></a>

 Las versiones de producto se asignan cuando se crea un producto y se pueden actualizar en cualquier momento. 

 Las versiones tienen una CloudFormation plantilla, un título, una descripción, un estado y una guía. 

## Estado de la versión
<a name="version-status"></a>

 Una versión puede tener uno de estos tres estados: 
+  **Active (Activo)** : aparece una versión activa en la lista de versiones y permite a los usuarios lanzarla. 
+  **Inactive (Inactivo)** : una versión inactiva está oculta en la lista de versiones. Los productos aprovisionados existentes lanzados desde esta versión no se verán afectados. 
+  **Eliminado**: si se elimina una versión, se elimina de la lista de versiones. No se puede deshacer la eliminación de una versión. 

## Guía de versión
<a name="version-guidance"></a>

 Puede establecer la guía de versión para proporcionar información a los usuarios finales sobre la versión del producto. La guía de versión solo afecta a las versiones de productos activas. 

 Hay dos opciones para la guía de versión: 
+  **Ninguno**: de forma predeterminada, las versiones de los productos no incluyen ninguna guía. Los usuarios finales pueden usar esa versión para actualizar y lanzar los productos aprovisionados. 
+  **Obsoleto**: los usuarios no pueden lanzar nuevos productos aprovisionados con una versión de producto obsoleta. Si un producto aprovisionado lanzado anteriormente utiliza una versión ahora obsoleta, los usuarios solo pueden actualizar ese producto aprovisionado con la versión existente o con una versión nueva. 

## Actualización de versiones
<a name="updating-versions"></a>

 Las versiones de producto se asignan al crear un producto y también puede actualizar una versión en cualquier momento. Para obtener más información acerca de la creación de un producto, consulte [Creación de productos](productmgmt-cloudresource.md). 

**Para actualizar una versión de producto**

1.  En la AWS Service Catalog consola, selecciona **Productos**. 

1.  En la lista de productos, elija el producto del que desea actualizar la versión. 

1.  En la página **Product details (Detalles del producto)**, seleccione la pestaña **Versions (Versiones)**, a continuación elija la versión que desee actualizar. 

1.  En la página **Version details (Detalles de la versión)**, edite la versión del producto, a continuación, elija **Save changes (Guardar cambios)**. 

# Uso de AWS Service Catalog restricciones
<a name="constraints"></a>

Aplique restricciones para controlar las reglas que se aplican a un producto de una cartera concreta cuando los usuarios finales lo lanzan. Cuando los usuarios finales lancen el producto, verán las reglas que haya aplicado mediante restricciones. Puede aplicar restricciones a un producto una vez que se este se incluya en una cartera. Las restricciones se activan tan pronto como se crean y se aplican a todas las versiones de un producto que no se hayan lanzado.

**Topics**
+ [Restricciones de lanzamiento](constraints-launch.md)
+ [Restricciones de notificación](constraints-notification.md)
+ [Restricciones de actualización de etiquetas](constraints-resourceupdate.md)
+ [Restricciones de conjunto de pilas](constraints-stackset.md)
+ [Restricciones de plantilla](catalogs_constraints_template-constraints.md)

# AWS Service Catalog Restricciones de lanzamiento
<a name="constraints-launch"></a>

Una restricción de lanzamiento especifica la función AWS Identity and Access Management (IAM) que AWS Service Catalog asume un usuario final cuando lanza, actualiza o cancela un producto. Una función de IAM es un conjunto de permisos que un usuario o AWS servicio puede asumir temporalmente para utilizar los servicios. AWS Para obtener un ejemplo introductorio, consulte:
+ CloudFormation tipo de producto: [Paso 6: agregar una restricción de lanzamiento para asignar un rol de IAM.](getstarted-launchconstraint.md)
+ Tipo de producto de Terraform Open Source o Terraform Cloud: [Paso 5: crear roles de lanzamiento](getstarted-launchrole-Terraform.md)

Las restricciones de lanzamiento se aplican a los productos de la cartera (asociación producto-cartera). Las restricciones de lanzamiento no se aplican a nivel de cartera ni a un producto en todas las carteras. Para asociar una restricción de lanzamiento con todos los productos de una cartera, debe aplicar la restricción de lanzamiento individualmente a cada producto.

Sin una restricción de lanzamiento, los usuarios finales deben lanzar y administrar los productos con sus propias credenciales de IAM. Para ello, deben tener permisos para CloudFormation los AWS servicios que utilizan los productos y AWS Service Catalog. En cambio, el uso de un rol de lanzamiento permite limitar los permisos de los usuarios finales al mínimo necesario para el producto en cuestión. Para obtener más información acerca de los permisos de los usuarios finales, consulte [Identity and Access Management en AWS Service Catalog](controlling_access.md).

Para crear y asignar roles de IAM, debe contar con los siguientes permisos administrativos de IAM:
+ `iam:CreateRole`
+ `iam:PutRolePolicy`
+ `iam:PassRole`
+ `iam:Get*`
+ `iam:List*`

## Configuración de un rol de lanzamiento
<a name="constraints-launch-role"></a>

El rol de IAM que se asigna a un producto como restricción de lanzamiento debe tener permisos para utilizar lo siguiente:

**Para los productos de Cloudformation**
+ La política administrada `arn:aws:iam::aws:policy/AWSCloudFormationFullAccess` CloudFormation 
+ Los servicios de la AWS CloudFormation plantilla del producto
+ Acceso de lectura a la AWS CloudFormation plantilla en un bucket de Amazon S3 propiedad del servicio. 

**Para productos de Terraform**
+ los servicios utilizados en la plantilla de Amazon S3 del producto
+ Acceso de solo lectura a la plantilla de Amazon S3 en un bucket de Amazon S3 propiedad del servicio. 
+ `resource-groups:Tag` para etiquetar en una instancia de Amazon EC2 (asumido por el motor de aprovisionamiento Terraform al realizar operaciones de aprovisionamiento)
+ `resource-groups:CreateGroup`para el etiquetado de grupos de recursos (supuesto AWS Service Catalog para crear grupos de recursos y asignar etiquetas) 

La política de confianza del rol de IAM debe AWS Service Catalog permitir asumir el rol. En el siguiente procedimiento, la política de confianza se establecerá automáticamente al seleccionar AWS Service Catalog el tipo de función. Si no utiliza la consola, consulte la sección *Creación de políticas de confianza para AWS los servicios que asumen funciones* en [Cómo utilizar las políticas de confianza con las funciones de IAM](https://aws.amazon.com/blogs/security/how-to-use-trust-policies-with-iam-roles/). 

**nota**  
Los permisos `servicecatalog:ProvisionProduct`, `servicecatalog:TerminateProvisionedProduct` y `servicecatalog:UpdateProvisionedProduct` no se pueden asignar en una función de lanzamiento. Debe usar los roles de IAM tal y como se muestra en los pasos de la política en línea en la sección [Conceder permisos a los usuarios finales de AWS Service Catalog .](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/getstarted-iamenduser.html)

**nota**  
Para ver los productos y recursos de Cloudformation aprovisionados en la AWS Service Catalog consola, los usuarios finales necesitan CloudFormation acceso de lectura. Para ver los productos y recursos aprovisionados en la consola **no** se utiliza el rol de lanzamiento.

**Para crear un rol de lanzamiento**

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

   Los productos de Terraform requieren configuraciones de roles de lanzamiento adicionales. Para obtener más información, consulte [Paso 5: crear roles de lanzamiento](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/getstarted-launchrole-Terraform) en *Primeros pasos con un producto de Terraform Open Source*. 

1. Elija **Roles**.

1. Elija **Crear nuevo rol**.

1. Escriba un nombre de función y elija **Next Step**.

1. En **Roles de servicio de AWS ** junto a **AWS Service Catalog** elija **Seleccionar**.

1. En la página **Attach Policy**, elija **Next Step**.

1. Para crear una función, elija **Create Role**. 

**Para adjuntar una política al nuevo rol**

1. Elija la función que ha creado para ver la página de detalles de dicha función.

1. Elija la pestaña **Permissions** y, a continuación, expanda la sección **Inline Policies**. A continuación, elija **click here**.

1. Elija **Custom Policy** y después **Select**. 

1. Introduzca un nombre para la política y, a continuación, pegue lo siguiente en el editor **Policy Document**: 

   ```
     
             "Statement":[
         {
            "Effect":"Allow",
            "Action":[
               "s3:GetObject"
            ],
            "Resource":"*",
            "Condition":{
               "StringEquals":{
                  "s3:ExistingObjectTag/servicecatalog:provisioning":"true"
               }
            }
      ]
   }
   ```
**nota**  
Al configurar un rol de lanzamiento para una restricción de lanzamiento, debe usar esta cadena: `"s3:ExistingObjectTag/servicecatalog:provisioning":"true"`. 

1. Agregue una línea a la política por cada servicio adicional que el producto utilice. Por ejemplo, si desea agregar permisos para Amazon Relational Database Service (Amazon RDS), escriba una coma al final de la última línea de la lista `Action` y, a continuación, agregue la siguiente línea: 

   ```
   "rds:*"
   ```

1. Seleccione **Apply Policy**.

## Aplicación de una restricción de lanzamiento
<a name="constraints-launch-constraint"></a>

Tras configurar el rol de lanzamiento, asigne el rol al producto como una restricción de lanzamiento. Esta acción indica AWS Service Catalog que hay que asumir el rol cuando un usuario final lanza el producto. 

**Para asignar el rol a un producto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Elija la cartera que contiene el producto.

1. Elija la pestaña **Constraints (Restricciones)** y elija **Create constraint (Crear restricción)**.

1. Elija el producto en **Product (Producto)** y elija **Launch (Lanzar)** en **Constraint type (Tipo de restricción)**. Elija **Continuar**.

1. En la sección **Restricción de lanzamiento**, puede seleccionar un rol de IAM de su cuenta y especificar un ARN de rol de IAM o escribir el nombre del rol.

   Si especifica el nombre del rol y si una cuenta utiliza la restricción de lanzamiento, se utilizará el rol de IAM con ese nombre en la cuenta. Este enfoque permite que las restricciones del rol de lanzamiento sean independientes de la cuenta, de modo que pueda crear menos recursos por cuenta compartida. 
**nota**  
El nombre del rol especificado debe existir en la cuenta creada para crear la restricción de lanzamiento y la cuenta del usuario que lanza un producto con esta restricción de lanzamiento. 

1. Después de especificar el rol de IAM, elija **Create (Crear)**.

## Añadir Confused Deputy a una restricción de lanzamiento
<a name="constraint-confused-deputy"></a>

AWS Service Catalog admite la protección de [Confused](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) Deputy para aquellos APIs que se ejecutan con una solicitud de Assume Role. Al añadir una restricción de lanzamiento, puede restringir el acceso a al rol de lanzamiento mediante las condiciones de la política de confianza del rol de lanzamiento `sourceAccount` y `sourceArn`. Garantiza que el rol de lanzamiento sea llamado por una fuente confiable.

En el siguiente ejemplo, el AWS Service Catalog usuario final pertenece a la cuenta 1111. Cuando el administrador de AWS Service Catalog crea una `LaunchConstraint` para un producto, el usuario final puede especificar las siguientes condiciones en la política de confianza del rol de lanzamiento para restringir asumir el rol a la cuenta 111111111111.

```
"Condition":{
   "ArnLike":{
      "aws:SourceArn":"arn:aws:servicecatalog:us-east-1:111111111111:*"
   },
   "StringEquals":{
      "aws:SourceAccount":"111111111111"
   }
  
}
```

Un usuario que aprovisiona un producto con la `LaunchConstraint` debe tener el mismo `AccountId` (111111111111). En caso contrario, la operación falla con un error `AccessDenied`, lo que impide un uso indebido del rol de lanzamiento.

Los siguientes elementos AWS Service Catalog APIs están protegidos por la protección de Confused Deputy:
+ `LaunchConstraint`
+ `ProvisionProduct`
+ `UpdateProvisionedProduct`
+ `TerminateProvisionedProduct`
+ `ExecuteProvisionedProductServiceAction`
+ `CreateProvisionedProductPlan`
+ `ExecuteProvisionedProductPlan`

La `sourceArn ` protección AWS Service Catalog solo admite plantillas ARNs, como «`arn:<aws-partition>:servicecatalog:<region>:<accountId>:`». No admite un recurso ARNs específico.

## Cómo verificar la restricción de lanzamiento
<a name="constraints-launch-test"></a>

Para comprobar que AWS Service Catalog utiliza la función de lanzamiento del producto y lo aprovisiona correctamente, inicie el producto desde la AWS Service Catalog consola. Para probar una restricción antes de distribuírsela a los usuarios, cree una cartera de prueba que contenga los mismos productos y pruebe las restricciones con ella.

**Para lanzar el producto**

1. En el menú de la AWS Service Catalog consola, elija **Service Catalog**, **End user**.

1. Elija el producto para abrir la página **Detalles del producto**. En la tabla **Opciones de lanzamiento**, compruebe que aparezca el nombre de recurso de Amazon (ARN) de la función.

1. Seleccione **Lanzar producto**.

1. Continúe con los demás pasos del lanzamiento y rellene la información que se le pida.

1. Compruebe que el producto se inicia correctamente.

# AWS Service Catalog Restricciones de notificación
<a name="constraints-notification"></a>

**nota**  
AWS Service Catalog no admite las restricciones de notificación para los productos Terraform Open Source o Terraform Cloud. 

Una restricción de notificación especifica un tema de Amazon SNS para recibir notificaciones sobre los eventos de la pila. 

Utilice el siguiente procedimiento para crear un tema de SNS y suscríbase a él.

**Para crear un tema de SNS y una suscripción**

1. [Abra la consola Amazon SNS en https://console.aws.amazon.com/sns/ la versión 3/home.](https://console.aws.amazon.com/sns/v3/home)

1. Seleccione **Crear tema**.

1. Escriba el nombre del tema y, a continuación, elija **Create topic**.

1. Seleccione **Crear subscripción**.

1. En **Protocol**, seleccione **Email**. En **Endpoint**, escriba una dirección de correo electrónico que pueda utilizar para recibir notificaciones. Seleccione **Create subscription**.

1. Recibirá un email de confirmación con el asunto `AWS Notification - Subscription Confirmation`. Abra el mensaje y siga las instrucciones para completar la suscripción.

Utilice el siguiente procedimiento para aplicar una restricción de notificación mediante el tema de SNS que ha creado en el procedimiento anterior.

**Para aplicar una restricción de notificación a un producto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Elija la cartera que contiene el producto.

1. Expanda **Constraints (Restricciones)** y elija **Add constraints (Añadir restricciones)**.

1. Elija el producto de **Producto** and establezca **Tipo de restricción** como **Notificación**. Elija **Continuar**.

1. Elija **Choose a topic from your account** y seleccione el tema de SNS que ha creado en **Topic Name**.

1. Seleccione **Enviar**.

# AWS Service Catalog Restricciones de actualización de etiquetas
<a name="constraints-resourceupdate"></a>

**nota**  
AWS Service Catalog no admite las restricciones de actualización de etiquetas para los productos de código abierto de Terraform.

Con las restricciones de actualización de etiquetas, AWS Service Catalog los administradores pueden permitir o impedir que los usuarios finales actualicen las etiquetas de los recursos asociados a un producto aprovisionado. Si se autoriza la actualización de etiquetas, se aplicarán nuevas etiquetas asociadas a la cartera o al producto a los recursos aprovisionados durante la actualización de un producto aprovisionado. 

**Para habilitar las actualizaciones de etiquetas de un producto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Elija la cartera que contiene el producto que desea actualizar.

1. Elija la pestaña **Restricciones** y elija **Crear restricción**.

1. En **Constraint type (Tipo de restricción)**, elija **Tag Update (Actualización de etiquetas)**.

1. Elija el producto en **Product (Producto)** y, a continuación, seleccione **Continue (Continuar)**.

1. En la **página Tag Updates (Actualizaciones de etiquetas)**, seleccione **Enable Tag Updates (Habilitar actualizaciones de etiquetas)**.

1. Seleccione **Enviar**.

# AWS Service Catalog Restricciones del conjunto de pilas
<a name="constraints-stackset"></a>

**nota**  
AWS Service Catalog no admite las restricciones de conjuntos de pilas para los productos de código abierto de Terraform.
AutoTags actualmente no son compatibles con CloudFormation StackSets. 

Una restricción de conjunto de pilas le permite configurar las opciones de despliegue de productos mediante CloudFormation StackSets. Puede especificar varias cuentas y regiones para el lanzamiento del producto. Los usuarios finales pueden administrar esas cuentas y determinar dónde se implementan los productos y el orden de implementación.

**Para aplicar una restricción de conjunto de pilas a un producto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Seleccione la cartera con el producto que desee.

1. Elija la pestaña **Restricciones** y luego elija **Crear restricción**.

1. En **Producto**, seleccione el producto. En **Tipo de restricción**, seleccione **Conjunto de pilas**. 

1. Configure las cuentas, las regiones y los permisos para las restricciones de su conjunto de pilas.
   + En la **Configuración de la cuenta**, identifique las cuentas en las que desea crear los productos.
   + En la **Configuración regional**, seleccione las regiones geográficas en las que desea implementar los productos y el orden en el que desea que se implementen esos productos en esas regiones.
   + En **Permisos**, elija un rol de StackSet administrador de IAM para administrar sus cuentas de destino. Si no eliges un rol, StackSets usa el ARN predeterminado. [Obtenga más información sobre la configuración de permisos de conjunto de pilas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs.html).

1. Seleccione **Crear**.

# AWS Service Catalog Restricciones de plantilla
<a name="catalogs_constraints_template-constraints"></a>

**nota**  
AWS Service Catalog no admite restricciones de plantilla para los productos Terraform Open Source o Terraform Cloud. 

Para limitar las opciones que los usuarios finales tienen a su disposición cuando lanzan un producto, se aplican restricciones de plantilla. Aplique restricciones de plantilla para asegurarse de que los usuarios finales puedan usar los productos sin infringir los requisitos de conformidad de la organización. Aplicas restricciones de plantilla a un producto de una AWS Service Catalog cartera. Una cartera debe contener uno o varios productos para que sea posible definir restricciones de plantilla.

Una restricción de plantilla consiste en una o más reglas que limitan los valores permitidos para los parámetros que se definen en la plantilla subyacente CloudFormation del producto. Los parámetros de una plantilla de CloudFormation definen el conjunto de valores que los usuarios pueden especificar al crear una pila. Por ejemplo, un parámetro podría definir los distintos tipos de instancias entre los que los usuarios pueden elegir al lanzar una pila que incluye EC2 instancias.

Si el conjunto de valores de parámetros de una plantilla es demasiado amplio para los destinatarios de la cartera, puede definir restricciones de plantilla con el fin de limitar los valores que los usuarios pueden elegir al lanzar un producto. Por ejemplo, si los parámetros de la plantilla incluyen tipos de EC2 instancias que son demasiado grandes para los usuarios que deberían usar solo tipos de instancias pequeños (como `t2.micro` o`t2.small`), puedes añadir una restricción de plantilla para limitar los tipos de instancias que pueden elegir los usuarios finales. Para obtener más información sobre los parámetros CloudFormation de la plantilla, consulta [Parámetros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) en la *Guía del CloudFormation usuario*.

Las restricciones de plantilla están vinculadas a una cartera. Si se aplican restricciones de plantilla a un producto de una cartera y, a continuación, se incluye el producto en otra cartera, las restricciones no se aplicarán al producto en la segunda cartera.

Si se aplica una restricción de plantilla a un producto que ya se ha compartido con los usuarios, la restricción se activará de inmediato para todos los lanzamientos de productos posteriores y para todas las versiones del producto que contenga esa cartera.

Las reglas de restricción de plantillas se definen mediante un editor de reglas o escribiéndolas como texto JSON en la consola de AWS Service Catalog administración. Para obtener más información sobre las reglas, su sintaxis y ejemplos, consulte [Reglas de restricciones de plantilla](reference-template_constraint_rules.md).

Para probar una restricción antes de distribuírsela a los usuarios, cree una cartera de prueba que contenga los mismos productos y pruebe las restricciones con ella.

**Para aplicar restricciones de plantilla a un producto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. En la página **Carteras**, elija la cartera que contiene el producto al que desee aplicar una restricción de plantilla. 

1. Expanda **Restricciones** y elija **Añadir restricciones**.

1. En la ventana **Seleccionar el producto y el tipo**, para **Producto** elija el producto para el que desea definir las restricciones de plantilla. A continuación, en **Tipo de restricción**, elija **Plantilla**. Elija **Continuar**.

1. En la página **Template constraint builder** edite las reglas de restricción mediante el editor de JSON o la interfaz del creador de reglas.
   + Para editar el código JSON de la regla, elija la pestaña **Editor de texto de restricción**. En esta pestaña se proporcionan varios ejemplos para ayudarle a comenzar.

     Para crear las reglas mediante una interfaz de creador de reglas, elija la pestaña **Creador de reglas**. En ella, puede elegir cualquier parámetro que se especifica en la plantilla del producto e indicar los valores admisibles para ese parámetro. En función del tipo de parámetro, debe indicar los valores admisibles eligiendo los elementos en una lista de comprobación, especificando un número o especificando un conjunto de valores separados por comas en una lista.

     Cuando haya terminado de crear la regla, elija **Añadir regla**. La regla aparecerá en la tabla en la pestaña **Creador de reglas** Para revisar y editar el resultado JSON, elija la pestaña **Editor de texto de restricción**.

1. Cuando haya terminado de editar las reglas de la restricción, elija **Enviar**. Para ver la restricción, vaya a la página de detalles de la cartera y amplíe **Restricciones**.

# Reglas de restricciones de plantilla
<a name="reference-template_constraint_rules"></a>

Las reglas que definen las restricciones de plantilla en una AWS Service Catalog cartera describen cuándo los usuarios finales pueden utilizar la plantilla y qué valores pueden especificar para los parámetros que se declaran en la CloudFormation plantilla utilizada para crear el producto que están intentando utilizar. Las reglas son útiles para impedir que los usuarios finales especifiquen accidentalmente un valor incorrecto. Por ejemplo, puede añadir una regla para comprobar si los usuarios finales especificaron una subred válida en una VPC determinada o `m1.small` usaron tipos de instancia para entornos de prueba. CloudFormation usa reglas para validar los valores de los parámetros antes de crear los recursos para el producto.

Cada regla consta de dos propiedades: una condición de regla (opcional) y declaraciones (obligatorias). La condición de regla determina cuándo surte efecto una regla. Las declaraciones describen qué valores pueden especificar los usuarios para un parámetro determinado. Si no se define la condición de regla, las declaraciones de la regla surten efecto en todos los casos. Para definir una condición de regla y las declaraciones, se utilizan *funciones intrínsecas específicas de reglas*, que son funciones que solo se pueden utilizar en la sección `Rules` de una plantilla. Puede anidar funciones, pero el resultado final de una condición de regla o una declaración debe ser verdadero o falso.

Por ejemplo, supongamos que ha declarado una VPC y un parámetro de subred en la sección `Parameters`. Puede crear una regla que valide que una subred determinada está en una VPC. Por lo tanto, cuando un usuario especifica una VPC, CloudFormation evalúa la afirmación para comprobar si el valor del parámetro de subred está en esa VPC antes de crear o actualizar la pila. Si el valor del parámetro no es válido, no podrá crear ni actualizar la pila CloudFormation inmediatamente. Si los usuarios no especifican una VPC, CloudFormation no comprueba el valor del parámetro de subred.

## Sintaxis
<a name="template-constraint-rules-syntax"></a>

La sección `Rules` de una plantilla consta del nombre de clave `Rules`, seguido de un único signo de dos puntos. Todas las declaraciones de regla van entre llaves. Si se declaran varias reglas, deben delimitarse mediante comas. Para cada regla, se declara un nombre lógico entre comillas seguido de un signo de dos puntos y de las llaves que contienen la condición de regla y las declaraciones.

Una regla puede incluir una propiedad `RuleCondition` y necesariamente debe incluir una propiedad `Assertions`. Para cada regla, se puede definir una sola condición de regla. En la propiedad `Assertions` se pueden definir una o varias declaraciones. Puede definir una condición de regla y declaraciones mediante funciones intrínsecas específicas de reglas, como se muestra en la siguiente pseudoplantilla:

```
"Rules":{
   "Rule01":{
      "RuleCondition":{
         "Rule-specific intrinsic function"
      },
      "Assertions":[
         {
            "Assert":{
               "Rule-specific intrinsic function"
            },
            "AssertDescription":"Information about this assert"
         },
         {
            "Assert":{
               "Rule-specific intrinsic function"
            },
            "AssertDescription":"Information about this assert"
         }
      ]
   },
   "Rule02":{
      "Assertions":[
         {
            "Assert":{
               "Rule-specific intrinsic function"
            },
            "AssertDescription":"Information about this assert"
         }
      ]
   }
}
```

La pseudoplantilla muestra una sección de `Rules` que contiene dos reglas con el nombre `Rule01` y `Rule02`. `Rule01` incluye una condición de regla y dos declaraciones. Si la función de la condición de regla se evalúa en true (verdadero), se evalúan y aplican ambas funciones en cada declaración. Si la condición de regla es falsa, la regla no surte efecto. `Rule02` siempre surte efecto porque no tiene una condición de regla, lo que significa que la afirmación siempre se evalúa y aplica.

Para obtener información sobre las funciones intrínsecas específicas de las reglas para definir las condiciones y afirmaciones de las reglas, consulte [Funciones de regla de AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-rules.html) en la *Guía del usuario de AWS CloudFormation *.

## Ejemplo: comprobación condicional del valor de un parámetro
<a name="template-constraint-rules-example"></a>

Las dos reglas siguientes comprueban el valor del parámetro `InstanceType`. En función del valor del parámetro Environment (`test` o `prod`), el usuario debe especificar `m1.small` o `m1.large` para el parámetro `InstanceType`. Los parámetros `InstanceType` y `Environment` deben declararse en la sección `Parameters` de la misma plantilla.

```
"Rules" : {
  "testInstanceType" : {
    "RuleCondition" : {"Fn::Equals":[{"Ref":"Environment"}, "test"]},
    "Assertions" : [
      {
        "Assert" :  { "Fn::Contains" : [ ["m1.small"], {"Ref" : "InstanceType"} ] },
        "AssertDescription" : "For the test environment, the instance type must be m1.small"
      }
    ]
  },
  "prodInstanceType" : {
    "RuleCondition" : {"Fn::Equals":[{"Ref":"Environment"}, "prod"]},
    "Assertions" : [
      {
        "Assert" :  { "Fn::Contains" : [ ["m1.large"], {"Ref" : "InstanceType"} ] },
        "AssertDescription" : "For the prod environment, the instance type must be m1.large"
      }
    ]
  }
}
```

# AWS Service Catalog Acciones de servicio
<a name="using-service-actions"></a>

**nota**  
AWS Service Catalog no admite acciones de servicio para los productos Terraform Open Source o Terraform Cloud.

AWS Service Catalog le permite reducir el mantenimiento administrativo y la formación de los usuarios finales y, al mismo tiempo, cumplir con las medidas de cumplimiento y seguridad. Con las acciones de servicio, como administrador, puede permitir a los usuarios finales que realicen tareas operativas, solucionen problemas, ejecuten comandos aprobados o soliciten permisos en AWS Service Catalog. Los [documentos de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html) se utilizan para definir acciones. Los [AWS Systems Manager documentos](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html) proporcionan acceso a acciones predefinidas que implementan las AWS mejores prácticas, como detener y reiniciar Amazon EC2, y también puede definir acciones personalizadas.

En este tutorial se proporcionará a los usuarios finales la capacidad de reiniciar una instancia Amazon EC2. Añadirá los permisos necesarios, definirá la acción de servicio, asociará la acción de servicio con un producto y probará la experiencia del usuario final utilizando la acción con un producto aprovisionado.

## Requisitos previos
<a name="service-actions-prerequisites"></a>

En este tutorial se presupone que dispone de todos los permisos de AWS administrador AWS Service Catalog, con los que ya está familiarizado y que ya dispone de un conjunto básico de productos, carteras y usuarios. Si no está familiarizado con este tutorial AWS Service Catalog, complete la [configuración](setup.md) y [Introducción](getstarted.md) las tareas antes de seguir con él.

**Topics**
+ [Requisitos previos](#service-actions-prerequisites)
+ [Paso 1: Configurar los permisos de usuario final](#service-actions-configure-end-user-permissions)
+ [Paso 2: Crear una acción de servicio](#service-actions-create-new-service-action)
+ [Paso 3: Asociar la acción de servicio con una versión de producto](#service-actions-associate-with-product-version)
+ [Paso 4: Probar la experiencia del usuario final](#service-actions-test-end-user-experience)
+ [Paso 5: Administrar las acciones del servicio con AWS CloudFormation](#service-actions-cloudformation)
+ [Paso 6: solucionar problemas](#service-actions-troubleshooting)

## Paso 1: Configurar los permisos de usuario final
<a name="service-actions-configure-end-user-permissions"></a>

Los usuarios finales deben tener los permisos necesarios para ver y realizar acciones de servicio específicas. En este ejemplo, el usuario final necesita permiso para acceder a la función de acciones de AWS Service Catalog servicio y realizar un reinicio de Amazon EC2.

**Para actualizar los permisos**

1. Abra la consola AWS Identity and Access Management (IAM) en. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. En el menú, localice los grupos de usuarios.

1. Elija los grupos que los usuarios finales utilizarán para acceder a AWS Service Catalog los recursos. En este ejemplo, seleccionamos el grupo de usuarios finales. En su propia implementación, elija el grupo que utilizan los usuarios finales relevantes.

1. En la pestaña **Permissions (Permisos)** de la página de detalles de su grupo, puede crear una nueva política o editar una existente. En este ejemplo, agregamos permisos a la política existente seleccionando la política personalizada creada para los permisos de AWS Service Catalog aprovisionamiento y rescisión del grupo.

1. En la página **Policy (Política)**, seleccione **Edit Policy (Editar política)** para agregar los permisos necesarios. Puede utilizar el editor visual o el editor JSON para editar la política. En este ejemplo, utilizamos el editor JSON para añadir los permisos. Para este tutorial, añada los siguientes permisos a la política:

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

****  

   ```
   {
   	"Version":"2012-10-17",		 	 	 
   	"Statement": [
   		{
   			"Sid": "Stmt1536341175150",
   			"Action": [
   				"servicecatalog:ListServiceActionsForProvisioningArtifact",
   				"servicecatalog:ExecuteprovisionedProductServiceAction",
   				"ssm:DescribeDocument",
   				"ssm:GetAutomationExecution",
   				"ssm:StartAutomationExecution",
   				"ssm:StopAutomationExecution",
   				"cloudformation:ListStackResources",
   				"ec2:DescribeInstanceStatus",
   				"ec2:StartInstances",
   				"ec2:StopInstances"
   			],
   			"Effect": "Allow",
   			"Resource": "*"
   		}
   	]
   }
   ```

------

1. Después de editar la política, revise y apruebe el cambio en ella. Los usuarios del grupo de usuarios finales ahora tienen los permisos necesarios para realizar la acción de reinicio de Amazon EC2 en AWS Service Catalog.

## Paso 2: Crear una acción de servicio
<a name="service-actions-create-new-service-action"></a>

A continuación, creará una acción de servicio para reiniciar las instancias Amazon EC2.

1. Abre la AWS Service Catalog consola en [https://console.aws.amazon.com/sc/](https://console.aws.amazon.com/servicecatalog/).

1. En el menú, elija **Service actions (Acciones de servicio)**.

1. En la página **Acciones de servicio**, elija **Crear acción**.

1. En la página **Crear acción**, elija un AWS Systems Manager documento para definir la acción del servicio. La acción de reinicio de instancia Amazon EC2 está definida por un documento AWS Systems Manager , por lo que mantenemos la opción predeterminada en el menú desplegable **Documentos de Amazon**.

1. Busque y elija la acción **AWS-Restart EC2 Instance**.

1. Proporcione un nombre y una descripción a la acción que tenga sentido para su entorno y su equipo. El usuario final verá esta descripción, así que elija algo que le ayude a entender lo que hace la acción.

1. En **Configuración de parámetro y destino**, elija el parámetro de documento de SSM que será el destino de la acción (por ejemplo, el **ID de instancia**) y elija el destino del parámetro. Seleccione **Add parameter (Añadir parámetro)** para añadir parámetros adicionales. 

1. En **Permissions (Permisos)**, elija un rol. Estamos usando permisos predeterminados para este ejemplo. Son posibles otras configuraciones de permisos y están definidas en esta página.

1. Después de revisar la configuración, elija **Create action** (Crear acción).

1. En la página siguiente, aparece una confirmación cuando se ha creado la acción y está lista para utilizarse.

## Paso 3: Asociar la acción de servicio con una versión de producto
<a name="service-actions-associate-with-product-version"></a>

Después de definir una acción, debe asociar un producto a dicha acción.

1. En la página **de acciones del servicio**, elija **AWS-Restart** yEC2instance, a continuación, seleccione **Asociar acción**. 

1. En la página **Associate action (Asociar acción)**, elija el producto en el que desea que sus usuarios finales realicen la acción de servicio. En este ejemplo, elegimos **Linux Desktop (Escritorio Linux)**.

1. Seleccione una versión del producto. Tenga en cuenta que puede utilizar la casilla de verificación superior para seleccionar todas las versiones.

1. Elija **Associate action (Asociar acción)**.

1. En la página siguiente aparece un mensaje de confirmación.

Ha creado la acción de servicio en AWS Service Catalog. El siguiente paso de este tutorial es utilizar la acción de servicio como usuario final.

## Paso 4: Probar la experiencia del usuario final
<a name="service-actions-test-end-user-experience"></a>

Los usuarios finales pueden realizar acciones de servicio en los productos aprovisionados. Para los fines de este tutorial, el usuario final debe tener al menos un producto aprovisionado. El producto aprovisionado debe lanzarse desde la versión del producto que asoció con la acción de servicio en el paso anterior.

**Para obtener acceso a la acción de servicio como usuario final**

1. Inicie sesión en la AWS Service Catalog consola como usuario final. 

1. En el AWS Service Catalog panel de control, en el panel de navegación, seleccione la **lista de productos aprovisionados**. La lista muestra los productos que se aprovisionan para la cuenta del usuario final.

1. En la página **Provisioned products list**, elija la instancia que está aprovisionada.

1. En la página de **detalles del producto aprovisionado**, selecciona **Acciones** en la parte superior derecha y, a continuación, selecciona la acción **AWS EC2instance-Restart**. 

1. Confirme que desea ejecutar la acción personalizada. Recibirá una confirmación de que se ha enviado la acción.

## Paso 5: Administrar las acciones del servicio con AWS CloudFormation
<a name="service-actions-cloudformation"></a>

 Puede crear acciones de servicio y sus asociaciones con AWS CloudFormation los recursos. Para obtener más información, consulte lo indicado en la *Guía del usuario de AWS CloudFormation *: 
+  [AWS::ServiceCatalog::CloudFormationProduct ProvisioningArtifactProperties](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-servicecatalog-cloudformationproduct-provisioningartifactproperties.html) 
+  [AWS::ServiceCatalog::ServiceActionAsociación](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-servicecatalog-serviceactionassociation.html) 

**nota**  
 Si gestionas las asociaciones de acciones de servicio con CloudFormation recursos, no añadas ni quites acciones de servicio a través del AWS Command Line Interface o Consola de administración de AWS. Cuando actualiza una pila, se sustituyen todos los cambios en las acciones del servicio que se hayan realizado fuera de CloudFormation . 

## Paso 6: solucionar problemas
<a name="service-actions-troubleshooting"></a>

Si la ejecución de la acción de servicio produce un error, puede encontrar el mensaje de error en la sección **Outputs** del evento de ejecución de acción de servicio en la página **Provisioned product**. A continuación, puede consultar las explicaciones de los mensajes de error comunes que puede encontrar.

**nota**  
El texto exacto de los mensajes de error está sujeto a cambios, por lo que debe evitar usarlos en cualquier tipo de proceso automatizado.

 **Internal Failure (Error interno)**

AWS Service Catalog se produjo un error interno. Inténtelo de nuevo más tarde. Si el error persiste, póngase en contacto con el servicio de atención al cliente. 

 **Se ha producido un error (ThrottlingException) al llamar a la StartAutomationExecution operación**

La ejecución de la acción del servicio se limitó por el servicio backend, como SSM. 

 **Access denied while assuming the role (Acceso denegado al asumir el rol)**

 AWS Service Catalog no pudo asumir la función especificada en la definición de la acción de servicio. Asegúrese de que la entidad principal *servicecatalog.amazonaws.com* o una entidad principal regional como *servicecatalog.us-east-1.amazonaws.com* esté incluida en la lista de la política de confianza del rol. 

 **Se produjo un error (AccessDeniedException) al llamar a la StartAutomationExecution operación: el usuario no está autorizado a realizar: ssm: StartAutomationExecution en el recurso.**

El rol especificado en la definición de la acción de servicio no tiene permisos para invocar ssm:. StartAutomationExecution Asegúrese de que el rol tiene los permisos de SSM adecuados. 

 **No se encuentra ningún recurso con el tipo *TargetType* en el producto aprovisionado**

El producto aprovisionado no contiene ningún recurso que coincida con el tipo de destino especificado en el documento SSM, como AWS: :EC2: :Instance. Compruebe el producto aprovisionado para estos recursos o confirme que el documento es correcto. 

 **Document with that name does not exist (El documento con ese nombre no existe)**

El documento especificado en la definición de acción del servicio no existe. 

 **Failed to describe SSM Automation document (Se ha producido un error al describir el documento de automatización de SSM)**

AWS Service Catalog encontró una excepción desconocida de SSM al intentar describir el documento especificado. 

 **Failed to retrieve credentials for role (Se ha producido un error al recuperar las credenciales para el rol)**

AWS Service Catalog encontró un error desconocido al asumir la función especificada. 

 **El parámetro tiene el valor "*InvalidValue*" y no se encuentra en *\$1ValidValue1\$1, \$1ValidValue2\$1***

 El valor del parámetro pasado a SSM no está en la lista de valores permitidos para el documento. Confirme que los parámetros proporcionados son válidos e inténtelo de nuevo. 

 **Error de tipo de parámetro. El valor proporcionado para no *ParameterName* es una cadena válida.**

El valor del parámetro pasado a SSM no es válido para el tipo del documento. 

 **Parameter is not defined in service action definition (El parámetro no está definido en la definición de acción del servicio)**

Se ha pasado un parámetro AWS Service Catalog que no está definido en la definición de la acción de servicio. Solo puede utilizar parámetros definidos en la definición de acción del servicio. 

 **El paso falla cuando se trata de una executing/canceling acción. *Error message.* Por favor, consulte la Guía de solución de problemas del servicio de automatización para obtener más detalles de diagnóstico.**

 Se ha producido un error en un paso del documento de automatización de SSM. Consulte el error en el mensaje para solucionar más problemas. 

 **Los siguientes valores para el parámetro no están permitidos porque no están en el producto aprovisionado: *InvalidResourceId***

El usuario solicitó la acción en un recurso que no está en el producto aprovisionado. 

 **TargetType no definido para el documento de automatización de SSM**

Las acciones de servicio requieren que los documentos de automatización de SSM tengan una TargetType definición. Compruebe su documento de automatización de SSM. 

# Añadir AWS Marketplace productos a su cartera
<a name="catalogs_marketplace-products"></a>

Puede añadir AWS Marketplace productos a sus carteras para ponerlos a disposición de sus usuarios AWS Service Catalog finales.

AWS Marketplace es una tienda en línea en la que puede encontrar, suscribirse y empezar a utilizar inmediatamente una amplia selección de software y servicios. Los tipos de productos AWS Marketplace incluyen bases de datos, servidores de aplicaciones, herramientas de prueba, herramientas de monitoreo, herramientas de administración de contenido y software de inteligencia empresarial. AWS Marketplace está disponible en[https://aws.amazon.com/marketplace](https://aws.amazon.com/marketplace). Tenga en cuenta que no puede añadir productos de software como servicio (SaaS) de a AWS Marketplace . AWS Service Catalog

Para distribuir un AWS Marketplace producto a los usuarios AWS Service Catalog finales, se copia el producto con la CloudFormation plantilla y AWS Service Catalog, a continuación, se añade el producto a una cartera.

**nota**  
AWS Service Catalog no admite la distribución de AWS Marketplace productos a los usuarios AWS Service Catalog finales mediante una plantilla de producto de Terraform Open Source o Terraform Cloud. 

AWS Marketplace admite AWS Service Catalog directamente o suscríbase y añada productos mediante la opción manual. Recomendamos añadir productos mediante la funcionalidad para la que se han diseñado específicamente AWS Service Catalog. 

## Administrar AWS Marketplace productos mediante AWS Service Catalog
<a name="catalogs_marketplace-sc"></a>

Puede añadir sus AWS Marketplace productos suscritos directamente AWS Service Catalog mediante una interfaz personalizada. En [AWS Marketplace](https://aws.amazon.com/marketplace), elija **Service Catalog (Catálogo de servicios)**. Para obtener más información, consulte la página sobre [cómo copiar productos a AWS Service Catalog](https://aws.amazon.com/marketplace/help/buyer-copy-product-to-SC?ref=help_ln_sibling) en la sección *Ayuda y preguntas frecuentes de AWS Marketplace *.

## Administrar y añadir AWS Marketplace productos manualmente
<a name="catalogs_marketplace-manual"></a>

Complete los siguientes pasos para suscribirse a un AWS Marketplace producto, definir ese producto en una CloudFormation plantilla y añadir la plantilla a una AWS Service Catalog cartera.

**Para suscribirse a un AWS Marketplace producto**

1. Ve a AWS Marketplace at[https://aws.amazon.com/marketplace](https://aws.amazon.com/marketplace).

1. Examine los productos o realice una búsqueda para encontrar el que desea agregar a la cartera de AWS Service Catalog . Elija el producto para ver la página de detalles del producto.

1. Elija **Continuar** para ver la página de tramitación y, a continuación, elija la pestaña **Lanzamiento manual**.

   La información de la página de gestión logística incluye los tipos de instancias de Amazon Elastic Compute Cloud (Amazon EC2) compatibles, las Regiones de AWS compatibles y el ID de Amazon Machine Image (AMI) que el producto utiliza para cada región. AWS Tenga en cuenta que algunas opciones afectarán a los costos. Utilizarás esta información para personalizar la CloudFormation plantilla en pasos posteriores.

1. Elija **Accept Terms** para suscribirse al producto.

   Tras suscribirte a un producto, podrás acceder a la información de la página de distribución del producto en cualquier AWS Marketplace momento. Para ello, selecciona **Tu software** y, a continuación, selecciona el producto.

**Para definir tu AWS Marketplace producto en una CloudFormation plantilla**

Para completar los siguientes pasos, utilizará una de las plantillas de CloudFormation muestra como punto de partida y personalizará la plantilla para que represente su AWS Marketplace producto. Para obtener acceso a las plantillas de ejemplo, consulte el artículo sobre [plantillas de ejemplo](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-sample-templates.html) en la *Guía del usuario de AWS CloudFormation *.

1. En la página de plantillas de muestra de la *Guía del CloudFormation usuario*, elige una AWS región para tu producto. La AWS región debe ser compatible con su AWS Marketplace producto. Puede ver las regiones compatibles en la página de tramitación del producto de AWS Marketplace.

1. Para ver una lista de plantillas de ejemplo de servicios que son adecuadas para la región, elija el enlace **Servicios**. 

1. Para comenzar, puede utilizar cualquiera de los ejemplos que sea adecuado para sus necesidades. En los pasos de este procedimiento se utiliza la plantilla **Amazon EC2 instance in a security group**. Para ver la plantilla de ejemplo, elija **View** y, a continuación, guarde localmente una copia de la plantilla para poder editarla. El archivo local debe tener la extensión `.template`.

1. Abra el archivo de la plantilla en un editor de texto.

1. Personalice la descripción de la parte superior de la plantilla. La descripción puede ser parecida a la siguiente:

   `"Description": "Launches a LAMP stack from AWS Marketplace",`

1. Personalice el parámetro `InstanceType` de forma que incluya únicamente los tipos de instancias EC2 que son compatibles con el producto. Si la plantilla incluye tipos de instancias EC2 no compatibles, el producto no se lanzará para los usuarios finales.

   1. En la página de gestión logística del producto AWS Marketplace, consulta los tipos de instancias de EC2 compatibles en la sección **Detalles de precios**.  
![\[La sección de detalles de precios de la página de gestión logística del producto AWS Marketplace muestra los tipos de instancias de EC2 compatibles.\]](http://docs.aws.amazon.com/es_es/servicecatalog/latest/adminguide/images/ec2-ondemand.png)

   1. En la plantilla, cambie el tipo de instancia predeterminado por el tipo de instancia EC2 compatible que desee.

   1. Modifique la lista `AllowedValues` de forma que incluya únicamente los tipos de instancias EC2 que son compatibles con el producto.

   1. Elimine de la lista `AllowedValues` los tipos de instancias EC2 que no desee que utilicen los usuarios finales cuando lancen el producto.

   Cuando haya terminado de editar el parámetro `InstanceType`, puede que tenga un aspecto similar al ejemplo siguiente:

   ```
       "InstanceType" : {
         "Description" : "EC2 instance type",
         "Type" : "String",
         "Default" : "m1.small",
         "AllowedValues" : [ "t1.micro", "m1.small", "m1.medium", "m1.large", "m1.xlarge", "m2.xlarge", "m2.2xlarge", "m2.4xlarge", "c1.medium", "c1.xlarge", "c3.large", "c3.large", "c3.xlarge", "c3.xlarge", "c3.4xlarge", "c3.8xlarge" ],
         "ConstraintDescription" : "Must be a valid EC2 instance type."
       },
   ```

1. En la sección `Mappings` de la plantilla, edite los mapeos de `AWSInstanceType2Arch` de modo que solo se incluyan los tipos de instancias EC2 y las arquitecturas que sean compatibles.

   1. Edite la lista de mapeos y elimine todos los tipos de instancias EC2 que no están incluidas en la lista `AllowedValues` para el parámetro `InstanceType`.

   1. Edite el valor `Arch` de cada tipo de instancia EC2 de modo que sea el tipo de arquitectura que es compatible con el producto. Los valores válidos son `PV64`, `HVM64` y `HVMG2`. Para saber qué arquitectura es compatible con el producto, consulte la página de detalles del producto en AWS Marketplace. Para saber qué arquitecturas son compatibles con las familias de instancias EC2, consulte la [Matriz de tipos de instancias de la AMI de Amazon Linux](https://aws.amazon.com/amazon-linux-ami/instance-type-matrix/).

   Cuando haya terminado de editar los mapeos de `AWSInstanceType2Arch`, puede que tengan un aspecto similar al ejemplo siguiente:

   ```
       "AWSInstanceType2Arch" : {
         "t1.micro"    : { "Arch" : "PV64"  },
         "m1.small"    : { "Arch" : "PV64"  },
         "m1.medium"   : { "Arch" : "PV64"  },
         "m1.large"    : { "Arch" : "PV64"  },
         "m1.xlarge"   : { "Arch" : "PV64"  },
         "m2.xlarge"   : { "Arch" : "PV64"  },
         "m2.2xlarge"  : { "Arch" : "PV64"  },
         "m2.4xlarge"  : { "Arch" : "PV64"  },
         "c1.medium"   : { "Arch" : "PV64"  },
         "c1.xlarge"   : { "Arch" : "PV64"  },
         "c3.large"    : { "Arch" : "PV64"  },
         "c3.xlarge"   : { "Arch" : "PV64"  },
         "c3.2xlarge"  : { "Arch" : "PV64"  },
         "c3.4xlarge"  : { "Arch" : "PV64"  },
         "c3.8xlarge"  : { "Arch" : "PV64"  }
       }
   ,
   ```

1. En la `Mappings` sección de la plantilla, edite las `AWSRegionArch2AMI` asignaciones para asociar cada AWS región con la arquitectura y el ID de AMI correspondientes a su producto.

   1. En la página de gestión logística del producto AWS Marketplace, consulta el ID de AMI que utiliza tu producto para cada AWS región, como en el siguiente ejemplo:

         
![\[Una tabla de regiones y AMI IDs en la página de gestión logística del producto de AWS Marketplace.\]](http://docs.aws.amazon.com/es_es/servicecatalog/latest/adminguide/images/sc-marketplace_ami_ids-console.png)

   1. En tu plantilla, elimina las asignaciones de las AWS regiones que no admitas.

   1. Edite el mapeo de cada región para eliminar las arquitecturas no compatibles (`PV64``HVM64`, o`HVMG2`) y su AMI asociada. IDs

   1. Para cada mapeo de AWS región y arquitectura restante, especifique el ID de AMI correspondiente en la página de detalles del producto en AWS Marketplace.

   Cuando haya terminado de editar los mapeos de `AWSRegionArch2AMI`, puede que el código tenga un aspecto similar al ejemplo siguiente:

   ```
       "AWSRegionArch2AMI" : {
         "us-east-1"        : {"PV64" : "ami-nnnnnnnn"},
         "us-west-2"        : {"PV64" : "ami-nnnnnnnn"},
         "us-west-1"        : {"PV64" : "ami-nnnnnnnn"},
         "eu-west-1"        : {"PV64" : "ami-nnnnnnnn"},
         "eu-central-1"     : {"PV64" : "ami-nnnnnnnn"},
         "ap-northeast-1"   : {"PV64" : "ami-nnnnnnnn"},
         "ap-southeast-1"   : {"PV64" : "ami-nnnnnnnn"},
         "ap-southeast-2"   : {"PV64" : "ami-nnnnnnnn"},
         "sa-east-1"        : {"PV64" : "ami-nnnnnnnn"}
       }
   ```

   Ahora puede usar la plantilla para añadir el producto a una AWS Service Catalog cartera. Si desea realizar cambios adicionales, consulte [Trabajo con plantillas de CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html) para obtener más información sobre las plantillas. 

**Para añadir tu AWS Marketplace producto a una AWS Service Catalog cartera**

1. Inicie sesión en Consola de administración de AWS y navegue hasta la consola AWS Service Catalog de administración en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. En la página **Carteras**, elija la cartera que desee agregar al producto de AWS Marketplace .

1. En la página de detalles de la cartera, elija **Subir nuevo producto**.

1. Escriba el producto solicitado y los detalles de soporte.

1. En la página **Version details**, seleccione **Upload a template file**, haga clic en **Browse** y elija el archivo de plantilla.

1. Escriba el título y la descripción de la versión.

1. Elija **Siguiente**.

1. En la página **Revisar**, compruebe que el resumen es correcto y, a continuación, elija **Confirmar y actualizar**. El producto se agregará a la cartera. Ahora ya está disponible para los usuarios finales que tienen acceso a la cartera.

# Uso CloudFormation StackSets
<a name="using-stacksets"></a>

**nota**  
AutoTags actualmente no son compatibles con CloudFormation StackSets. 

Puedes utilizarlos CloudFormation StackSets para lanzar AWS Service Catalog productos en varias cuentas Regiones de AWS y. Puede especificar el orden en el que los productos se implementan secuencialmente en Regiones de AWS. En varias cuentas, los productos se implementan en paralelo. En el lanzamiento, los usuarios pueden especificar la tolerancia a errores y el número máximo de cuentas en las que se puede realizar la implementación en paralelo. Para obtener más información, consulte [Trabajar con CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html).

## Diferencias entre conjuntos de pilas e instancias de pila
<a name="stacksets-vs-stack-instances"></a>

Un *conjunto de pilas* te permite crear pilas en AWS cuentas de todas AWS las regiones mediante una sola CloudFormation plantilla.

Una *instancia de pila* se refiere a una pila en una cuenta de destino de una región de AWS y está asociada a un solo conjunto de pilas.

Para obtener más información, consulte [Conceptos de StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html).

## Restricciones de conjunto de pilas
<a name="stackset-constraints"></a>

En AWS Service Catalog, puede usar las restricciones de los conjuntos de pilas para configurar las opciones de implementación del producto.

 AWS Service Catalog admite las restricciones de conjuntos de productos en dos categorías AWS GovCloud (US) Regions: AWS GovCloud (EE. UU., oeste) y AWS GovCloud (EE. UU., este).

Para obtener más información, consulte [Restricciones de conjuntos de pilas de AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/constraints-stackset.html). 

# Administración de presupuestos
<a name="catalogs_budgets"></a>

Puedes usar AWS Budgets para hacer un seguimiento interno de los costos y el uso de tus servicios. AWS Service Catalog Puede asociar los presupuestos a AWS Service Catalog productos y carteras.

**nota**  
AWS Service Catalog no admite presupuestos para los productos de código abierto de Terraform. 

AWS Los presupuestos le permiten establecer presupuestos personalizados que le avisen cuando sus costos o su uso superen (o se prevea que superen) el importe presupuestado. La información sobre AWS los presupuestos está disponible en. [https://aws.amazon.com/aws-cost-management/aws-budgets](https://aws.amazon.com/aws-cost-management/aws-budgets)

**Topics**
+ [Requisitos previos](#budgets-setup)
+ [Cómo crear un presupuesto](#budgets-create)
+ [Asociación de un presupuesto](#budgets-associate)
+ [Visualización de un presupuesto](#budgets-view)
+ [Desasociación de un presupuesto](#budgets-disassociate)

## Requisitos previos
<a name="budgets-setup"></a>

Antes de usar AWS Budgets, debe activar las etiquetas de asignación de costes en la Administración de facturación y costos de AWS consola. Para obtener más información, consulte [Activación de etiquetas de asignación de costos definidas por el usuario](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/activating-tags.html) en la *Guía del usuario Administración de facturación y costos de AWS *. 

**nota**  
Las etiquetas tardan hasta 24 horas en activarse.

También debe permitir el acceso de los usuarios a la Administración de facturación y costos de AWS consola para todos los usuarios o grupos que vayan a utilizar la función Presupuestos. Para ello, cree una nueva política para los usuarios.

Para permitir a los usuarios crear presupuestos, también debe permitir a los usuarios ver la información de facturación. Si desea utilizar notificaciones de Amazon SNS, puede proporcionar a los usuarios la capacidad de crear notificaciones de Amazon SNS, tal y como se muestra en el ejemplo de política siguiente.

**Para crear la política de presupuestos**

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación, seleccione **Políticas**. 

1. En el panel de contenido, elija **Create policy (Crear política)**. 

1. Seleccione la pestaña **JSON** y copie el texto del siguiente documento de política JSON. Pegue el texto en el cuadro de texto **JSON**. 

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "Stmt1435216493000",
               "Effect": "Allow",
               "Action": [
                   "aws-portal:ViewBilling",
                   "aws-portal:ModifyBilling",
                   "budgets:ViewBudget",
                   "budgets:ModifyBudget"
               ],
               "Resource": [
                   "*"
               ]
           },
           {
               "Sid": "Stmt1435216552000",
               "Effect": "Allow",
               "Action": [
                   "sns:*"
               ],
               "Resource": [
                   "arn:aws:sns:us-east-1:123456789012:*"
               ]
           }
       ]
   }
   ```

------

1. Cuando haya terminado, elija **Review policy (Revisar la política)**. El validador de políticas notifica los errores de sintaxis.

1. En la página **Review (Revisar)**, asigne un nombre a la política. Revise el **Summary (Resumen)** de la política para ver los permisos concedidos por la política y, a continuación, elija **Create policy (Crear política)** para guardar el trabajo. 

   La nueva política aparece en la lista de las políticas administradas y está lista para asociarse a los grupos y usuarios. Para obtener más información, consulte [Crear y asociar una política administrada por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_managed-policies.html#step2-attach-policy) en la *Guía del usuario de AWS Identity and Access Management *.

## Cómo crear un presupuesto
<a name="budgets-create"></a>

 En la AWS Service Catalog consola de administración, las páginas de **listas de productos** y **carteras** contienen información sobre los productos y carteras existentes y le permiten tomar medidas al respecto. Para crear un presupuesto, primero decida a qué producto o cartera desea asociar el presupuesto. 

**Para crear un presupuesto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1.  Elija **Lista de productos** o **Carteras**. 

1.  Seleccione el producto o la cartera a la que desea añadir un presupuesto. 

1.  Abra el menú **Acciones** y, a continuación, elija **Crear presupuesto**. 

1.  En la página **Budget creation (Creación de presupuesto)** asocie un tipo de etiqueta al presupuesto. 

    Existen dos tipos de etiquetas: AutoTags y TagOptions. AutoTags identificar la cartera, el producto y el usuario que lanzó un producto. AWS Service Catalog aplica estas etiquetas automáticamente a los recursos aprovisionados. A TagOption es un par clave-valor definido por el administrador que se administra en. AWS Service Catalog

    Para que los gastos que se producen en una cartera o producto se reflejen en el presupuesto asociado, deben tener la misma etiqueta. Tenga en cuenta que una clave de etiqueta que se utiliza por primera vez puede tardar 24 horas en activarse. Para obtener más información, consulte [Requisitos previos](#budgets-setup).

1.  ** AWS Budgets Elija Crear en.** Le dirigirá a la página **Establecer su presupuesto**. Continúe con la configuración del presupuesto siguiendo los pasos que se indican en [Creación de un presupuesto](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-create.html). 

**nota**  
 Después de crear un presupuesto, debe asociarlo al producto o a la cartera. 

## Asociación de un presupuesto
<a name="budgets-associate"></a>

 Cada cartera o producto puede tener un presupuesto asociado. Cada presupuesto se puede asociar a varias carteras y productos. 

 Cuando asocia un presupuesto a un producto o cartera, podrá ver información sobre el presupuesto en la página de detalles de dicho producto o cartera. Para que el gasto que se produce en el producto o la cartera se refleje en el presupuesto, debe asociar las mismas etiquetas tanto en el presupuesto como en el producto o la cartera. 

**nota**  
 Si eliminas un presupuesto de AWS Budgets, seguirán existiendo asociaciones con AWS Service Catalog productos y carteras. AWS Service Catalog no podrá mostrar ninguna información sobre el presupuesto eliminado. 

**Para asociar un presupuesto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1.  Elija **Lista de productos** o **Carteras**. 

1.  Seleccione el producto o la cartera a la que desea asociar el presupuesto. 

1.  Abra el menú **Acciones** y, a continuación, elija **Asociar presupuesto**. 

1.  En la página **Asociación de presupuesto**, seleccione un presupuesto existente y elija **Continuar**. 

1.  La tabla **Productos** o **Carteras** ahora incluye datos del presupuesto que acaba de añadir. 

## Visualización de un presupuesto
<a name="budgets-view"></a>

 Si un presupuesto está asociado a un producto, puede ver información sobre el presupuesto en la página **Productos** y **Detalles del producto**. Si un presupuesto está asociado a una cartera, puede ver información sobre el presupuesto en las páginas **Carteras** y **Detalles de la cartera**. 

 Las páginas **Carteras** y **Lista de productos** muestran información del presupuesto de los recursos existentes. Puede ver columnas que muestran **Current vs. budget (Actual vs. presupuesto)** y **Forecast vs. budget (Previsto vs. presupuesto)**. 

 Cuando seleccione un producto o una cartera, será dirigido a una página de detalles. Las páginas de **Detalles de la cartera** y **Detalles del producto** tienen secciones con información detallada sobre el presupuesto asociado. Puede ver la cantidad presupuestada, el gasto actual y el gasto previsto. También tiene la opción de ver los detalles del presupuesto y editarlo. 

## Desasociación de un presupuesto
<a name="budgets-disassociate"></a>

 Puede desasociar un presupuesto de una cartera o un producto. 

**nota**  
 Si elimina un presupuesto de AWS los presupuestos, seguirán existiendo asociaciones con AWS Service Catalog productos y carteras. AWS Service Catalog no podrá mostrar ninguna información sobre el presupuesto eliminado. 

**Para desasociar un presupuesto**

1. Abra la consola de Service Catalog en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1.  Elija **Lista de productos** o **Carteras**. 

1.  Seleccione el producto o la cartera de la que desea desasociar un presupuesto. 

1.  Elija **Acciones**. En el menú desplegable, seleccione **Disociar el presupuesto**. Aparece una alerta de confirmación. 

1.  Cuando confirme que desea disociar el presupuesto del producto o la cartera, seleccione **Confirmar**. 