

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.

# Introducción
<a name="getstarted"></a>

 Para empezar con AWS Service Catalog , utilice una de las plantillas de producto bien diseñadas de la biblioteca de introducción o siga los pasos de uno de los tutoriales de introducción. 

 En el tutorial realizará tareas como administrador del catálogo y usuario final. Como administrador del catálogo, crea una cartera y, a continuación, un producto. Como usuario final, debe verificar que puede acceder a la consola del usuario final e iniciar el producto. El producto es uno de los siguientes: 
+ Un entorno de desarrollo en la nube que se ejecuta en Amazon Linux y se basa en una CloudFormation plantilla que define los AWS recursos que puede utilizar el producto.
+ Un entorno de código abierto que se ejecuta en un motor de aprovisionamiento de Terraform y se basa en un archivo de configuración tar.gz que define los AWS recursos que puede utilizar el producto. 

**nota**  
 Antes de comenzar, asegúrese de que ha realizado las acciones que se detallan en [Configuración AWS Service Catalog](setup.md). 

**Topics**
+ [

# Biblioteca de introducción
](getstarted-library.md)
+ [

# Cómo empezar con un CloudFormation producto
](getstarted-CFN.md)
+ [

# Primeros pasos con un producto de Terraform
](getstarted-Terraform.md)

# Biblioteca de introducción
<a name="getstarted-library"></a>

 AWS Service Catalog proporciona una biblioteca de introducción con plantillas de productos bien diseñadas para que pueda empezar rápidamente. Puede copiar cualquiera de los productos de las carteras de nuestra biblioteca de introducción en su cuenta y, a continuación, personalizarlo para que se adapte a sus necesidades. 

**Topics**
+ [

## Requisitos previos
](#getting-started-library-prereqs)
+ [

## Más información
](#getting-started-library-learn-more)

## Requisitos previos
<a name="getting-started-library-prereqs"></a>

 Antes de utilizar las plantillas de nuestra biblioteca de introducción, asegúrese de contar con lo siguiente: 
+ Los permisos necesarios para usar CloudFormation plantillas. Para obtener más información, consulte [Controlar el acceso con AWS Identity and Access Management](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html).
+ Los permisos de administrador necesarios para administrar AWS Service Catalog. Para obtener más información, consulte [Identity and Access Management en AWS Service Catalog](controlling_access.md).

## Más información
<a name="getting-started-library-learn-more"></a>

Para obtener más información acerca del marco de Well-Architected, consulte [AWS Well-Architected](https://aws.amazon.com/architecture/well-architected/). 

# Cómo empezar con un CloudFormation producto
<a name="getstarted-CFN"></a>

 Cuando empiece a usar AWS Service Catalog , utilice una de las plantillas de productos bien diseñadas de la biblioteca de introducción o siga los pasos del tutorial de introducción. 

 En el tutorial realizará tareas como administrador del catálogo y usuario final. Como administrador del catálogo, crea una cartera y, a continuación, un producto. Como usuario final, debe verificar que puede acceder a la consola del usuario final e iniciar el producto. El producto es un entorno de desarrollo en la nube que se ejecuta en Amazon Linux y se basa en una CloudFormation plantilla que define los AWS recursos que puede utilizar el producto. 

**nota**  
 Antes de comenzar, asegúrese de que ha realizado las acciones que se detallan en [Configuración AWS Service Catalog](setup.md). 

**Topics**
+ [

# Paso 1: Descarga la CloudFormation plantilla
](getstarted-template.md)
+ [

# Paso 2: Crear un par de claves
](getstarted-keypair.md)
+ [

# Paso 3: crear una cartera de
](getstarted-portfolio.md)
+ [

# Paso 4: crear un nuevo producto en la cartera
](getstarted-product.md)
+ [

# Paso 5: agregar una restricción de plantilla para limitar el tamaño de instancia
](getstarted-constraint.md)
+ [

# Paso 6: agregar una restricción de lanzamiento para asignar un rol de IAM.
](getstarted-launchconstraint.md)
+ [

# Paso 7: conceder a los usuarios finales acceso a la cartera
](getstarted-deploy.md)
+ [

# Paso 8: probar la experiencia del usuario final
](getstarted-verify.md)

# Paso 1: Descarga la CloudFormation plantilla
<a name="getstarted-template"></a>

 Puede usar CloudFormation plantillas para configurar y aprovisionar carteras y productos. Estas plantillas son archivos de texto con formato JSON o YAML que describen los recursos que desea aprovisionar. Para obtener más información, consulte [Formatos de plantilla](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-formats.html) en la *Guía del usuario de CloudFormation *. Puede usar el AWS CloudFormation editor o el editor de texto que prefiera para crear y guardar plantillas. En este tutorial, hemos proporcionado una plantilla sencilla para comenzar. Esta plantilla lanza una única instancia de Linux configurada para el acceso SSH. 

**nota**  
 El uso CloudFormation de plantillas requiere permisos especiales. Antes de comenzar, asegúrese de que cuenta con los permisos necesarios. Para obtener más información, consulte Requisitos previos en [Biblioteca de introducción](getstarted-library.md). 

## Descarga de la plantilla
<a name="template-download"></a>

La plantilla de ejemplo proporcionada para este tutorial está disponible en [https://awsdocs.s3.amazonaws.com/servicecatalog/development-environment.template](https://awsdocs.s3.amazonaws.com/servicecatalog/development-environment.template). `development-environment.template`

## Descripción general de la plantilla
<a name="template-overview"></a>

El texto de la plantilla de ejemplo se muestra a continuación:

```
{
  "AWSTemplateFormatVersion" : "2010-09-09",

  "Description" : "AWS Service Catalog sample template. Creates an Amazon EC2 instance 
                    running the Amazon Linux AMI. The AMI is chosen based on the region 
                    in which the stack is run. This example creates an EC2 security 
                    group for the instance to give you SSH access. **WARNING** This 
                    template creates an Amazon EC2 instance. You will be billed for the AWS resources used if you create a stack from this template.",

  "Parameters" : {
    "KeyName": {
      "Description" : "Name of an existing EC2 key pair for SSH access to the EC2 instance.",
      "Type": "AWS::EC2::KeyPair::KeyName"
    },

    "InstanceType" : {
      "Description" : "EC2 instance type.",
      "Type" : "String",
      "Default" : "t2.micro",
      "AllowedValues" : [ "t2.micro", "t2.small", "t2.medium", "m3.medium", "m3.large", 
        "m3.xlarge", "m3.2xlarge" ]
    },

    "SSHLocation" : {
      "Description" : "The IP address range that can SSH to the EC2 instance.",
      "Type": "String",
      "MinLength": "9",
      "MaxLength": "18",
      "Default": "0.0.0.0/0",
      "AllowedPattern": "(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})/(\\d{1,2})",
      "ConstraintDescription": "Must be a valid IP CIDR range of the form x.x.x.x/x."
   }
  },

  "Metadata" : {
    "AWS::CloudFormation::Interface" : {
      "ParameterGroups" : [{
        "Label" : {"default": "Instance configuration"},
        "Parameters" : ["InstanceType"]
      },{
        "Label" : {"default": "Security configuration"},
        "Parameters" : ["KeyName", "SSHLocation"]
      }],
      "ParameterLabels" : {
        "InstanceType": {"default": "Server size:"},
        "KeyName": {"default": "Key pair:"},
        "SSHLocation": {"default": "CIDR range:"}
      }
    }
  },

  "Mappings" : {
    "AWSRegionArch2AMI" : {
      "us-east-1"      : { "HVM64" : "ami-08842d60" },
      "us-west-2"      : { "HVM64" : "ami-8786c6b7" },
      "us-west-1"      : { "HVM64" : "ami-cfa8a18a" },
      "eu-west-1"      : { "HVM64" : "ami-748e2903" },
      "ap-southeast-1" : { "HVM64" : "ami-d6e1c584" },
      "ap-northeast-1" : { "HVM64" : "ami-35072834" },
      "ap-southeast-2" : { "HVM64" : "ami-fd4724c7" },
      "sa-east-1"      : { "HVM64" : "ami-956cc688" },
      "cn-north-1"     : { "HVM64" : "ami-ac57c595" },
      "eu-central-1"   : { "HVM64" : "ami-b43503a9" }
    }

  },

  "Resources" : {
    "EC2Instance" : {
      "Type" : "AWS::EC2::Instance",
      "Properties" : {
        "InstanceType" : { "Ref" : "InstanceType" },
        "SecurityGroups" : [ { "Ref" : "InstanceSecurityGroup" } ],
        "KeyName" : { "Ref" : "KeyName" },
        "ImageId" : { "Fn::FindInMap" : [ "AWSRegionArch2AMI", { "Ref" : "AWS::Region" }, "HVM64" ] }
      }
    },

    "InstanceSecurityGroup" : {
      "Type" : "AWS::EC2::SecurityGroup",
      "Properties" : {
        "GroupDescription" : "Enable SSH access via port 22",
        "SecurityGroupIngress" : [ {
          "IpProtocol" : "tcp",
          "FromPort" : "22",
          "ToPort" : "22",
          "CidrIp" : { "Ref" : "SSHLocation"}
        } ]
      }
    }
  },

  "Outputs" : {
    "PublicDNSName" : {
      "Description" : "Public DNS name of the new EC2 instance",
      "Value" : { "Fn::GetAtt" : [ "EC2Instance", "PublicDnsName" ] }
    },
    "PublicIPAddress" : {
      "Description" : "Public IP address of the new EC2 instance",
      "Value" : { "Fn::GetAtt" : [ "EC2Instance", "PublicIp" ] }
    }
  }
}
```

**Recursos de la plantilla**

La plantilla declara recursos que deben crearse al lanzar el producto. Consta de las secciones siguientes:
+ **AWSTemplateFormatVersion**(opcional): la versión del [formato de AWS plantilla](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/format-version-structure.html) utilizada para crear esta plantilla. La última versión de formato de plantilla es 2010-09-09 y es en la actualidad el único valor válido.
+ **Descripción** (opcional): descripción de la plantilla.
+ **Parameters** (opcional): parámetros que el usuario debe especificar para lanzar el producto. Para cada parámetro, la plantilla incluye una descripción y las restricciones que el valor escrito debe cumplir. Para obtener más información acerca de las restricciones, consulte [Uso de AWS Service Catalog restricciones](constraints.md).

  El `KeyName` parámetro le permite especificar un nombre de key pair de Amazon Elastic Compute Cloud (Amazon EC2) que los usuarios finales deben proporcionar cuando lanzan su producto. AWS Service Catalog El par de claves se crea en el siguiente paso.
+ **Metadatos** (opcional): objetos que proporcionan información adicional acerca de la plantilla. La clave [AWS:CloudFormation: :Interfaz](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-interface.html) define cómo se muestran los parámetros en la vista de la consola del usuario final. La propiedad `ParameterGroups` define cómo se agrupan los parámetros y los encabezados de esos grupos. La propiedad `ParameterLabels` define los nombres intuitivos de los parámetros. Cuando un usuario especifica los parámetros para lanzar un producto que se basa en esta plantilla, la vista de la consola del usuario final muestra el parámetro con la etiqueta `Server size:` bajo el encabezado `Instance configuration` y los parámetros con la etiqueta `Key pair:` y `CIDR range:`, bajo el encabezado `Security configuration`.
+ **Mapeos** (opcional): un mapeo de claves y valores asociados que puede utilizar para especificar valores de parámetros condicionales, similar a una tabla de búsqueda. Puede hacer coincidir una clave con el valor correspondiente mediante la función FindInMap intrínseca [Fn::](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-findinmap.html) de las secciones Recursos y Resultados. La plantilla anterior incluye una lista de AWS regiones y la imagen de máquina de Amazon (AMI) correspondiente a cada una. AWS Service Catalog utiliza este mapeo para determinar qué AMI usar en función de la AWS región que el usuario seleccione en Consola de administración de AWS.
+ **Recursos** (obligatorio): recursos de pila y sus propiedades. Puede consultar los recursos en las secciones **Recursos** y **Salidas** de la plantilla. En la plantilla anterior, especificamos una EC2 instancia que ejecute Amazon Linux y un grupo de seguridad que permita el acceso SSH a la instancia. La sección **Propiedades** del recurso de la EC2 instancia utiliza la información que el usuario escribe para configurar el tipo de instancia y un nombre clave para el acceso por SSH.

  CloudFormation usa la AWS región actual para seleccionar el ID de AMI de las asignaciones definidas anteriormente y le asigna un grupo de seguridad. El grupo de seguridad está configurado para permitir el acceso entrante en el puerto 22 desde el rango de direcciones IP de CIDR que el usuario especifica.
+ **Outputs** (opcional): texto que indica al usuario cuándo se ha completado el lanzamiento de un producto. La plantilla proporcionada obtiene el nombre de DNS público de la instancia lanzada y se lo muestra al usuario. El usuario necesita el nombre de DNS para conectarse a la instancia mediante SSH.

  

  Para obtener más información sobre la estructura de las plantillas, consulte [Referencia de las plantillas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-reference.html) en la *Guía del usuario de CloudFormation *.

# Paso 2: Crear un par de claves
<a name="getstarted-keypair"></a>

Para que tus usuarios finales puedan lanzar el producto que se basa en la plantilla de ejemplo de este tutorial, debes crear un EC2 key pair de Amazon. Un par de claves es una combinación de una clave pública que se utiliza para cifrar los datos y una clave privada que se utiliza para descifrarlos. Para obtener más información sobre los pares de claves, asegúrate de haber iniciado sesión en la AWS consola y consulta [Amazon EC2 Key Pairs](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) en la *Guía del EC2 usuario de Amazon*.

La CloudFormation plantilla de este tutorial incluye el `KeyName` parámetro: `development-environment.template`

```
. . .
  "Parameters" : {
    "KeyName": {
      "Description" : "Name of an existing EC2 key pair for SSH access to the EC2 instance.",
      "Type": "AWS::EC2::KeyPair::KeyName"
    },
. . .
```

Los usuarios finales deben especificar el nombre de un par de claves AWS Service Catalog al lanzar el producto basado en la plantilla.

Si ya tiene un par de claves en la cuenta que prefiere utilizar, puede ir directamente a [Paso 3: crear una cartera de](getstarted-portfolio.md). De lo contrario, lleve a cabo los pasos que figuran a continuación.

**Creación de un par de claves**

1. Abre la EC2 consola de Amazon en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel de navegación, en **Network & Security**, seleccione **Key Pairs**.

1. En la página **Key Pairs**, elija **Create Key Pair**.

1. En **Key pair name**, escriba un nombre que sea fácil de recordar y, a continuación, seleccione **Create**.

1. Cuando la consola le pida que guarde el archivo de clave privada, guárdelo en un lugar seguro.
**importante**  
Esta es la única oportunidad para guardar el archivo de clave privada.

# Paso 3: crear una cartera de
<a name="getstarted-portfolio"></a>

Para proporcionar productos a los usuarios, comience por crear una cartera para ellos.

**Para crear 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 izquierdo, elija **Carteras** y luego, **Crear cartera**. 

1. Escriba los siguientes valores:
   + **Portfolio name**: **Engineering Tools**
   + **Descripción de la cartera**: **Sample portfolio that contains a single product.** 
   + **Propietario**: **IT (it@example.com)** 

1. Seleccione **Crear**.

# Paso 4: crear un nuevo producto en la cartera
<a name="getstarted-product"></a>

Una vez que haya creado una cartera, ya podrá crear un producto dentro de la cartera. En este tutorial, creará un producto denominado **Linux Desktop**, un entorno de desarrollo en la nube que se ejecuta en Amazon Linux, dentro de la cartera **Herramienta de ingeniería**.

**Cómo crear un producto dentro de una cartera**

1. Si acaba de completar el paso anterior, la página **Portfolios** ya está abierta. De lo contrario, abra [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Seleccione y abra la cartera **Engineering Tools** que ha creado en el paso 2. 

1. Seleccione **Cargar un producto nuevo**.

1. En la página **Crear producto**, en la sección Detalles del producto, introduzca lo siguiente:
   + **Product name**: **Linux Desktop**
   + **Descripción del producto**: **Cloud development environment configured for engineering staff. Runs AWS Linux.**
   + **Propietario**: **IT**
   + **Distribuidor**: *(en blanco)*

1. En la página de **detalles de la versión**, selecciona **Usar una CloudFormation plantilla**. A continuación, seleccione **Especificar una URL de plantilla de Amazon S3** e introduzca lo siguiente:
   + **Select template**: **https://awsdocs.s3.amazonaws.com/servicecatalog/development-environment.template**
   + **Título de versión**: **v1.0** 
   + **Descripción**: **Base Version**

1. En la página **Detalles de soporte**, introduzca:
   + **Contacto para correo electrónico**: **ITSupport@example.com**
   + **Enlace de soporte**: **https://wiki.example.com/IT/support**
   + **Descripción de soporte**: **Contact the IT department for issues deploying or connecting to this product.**

1. Seleccione **Crear producto**.

# Paso 5: agregar una restricción de plantilla para limitar el tamaño de instancia
<a name="getstarted-constraint"></a>

Las restricciones suponen una capa de control adicional de los productos para toda la cartera. Las restricciones permiten controlar el contexto de lanzamiento de un producto (restricciones de lanzamiento) o agregar reglas a la plantilla de CloudFormation (restricciones de plantilla). Para obtener más información, consulte [Uso de AWS Service Catalog restricciones](constraints.md).

Agregue una restricción de plantilla al producto Linux Desktop que impedirá que los usuarios seleccionen los tipos de instancias grandes en el momento del lanzamiento. La plantilla del entorno de desarrollo permite al usuario elegir entre seis tipos de instancias. Esta restricción limita los tipos de instancias válidos a los dos tipos menores: `t2.micro` y `t2.small`. Para obtener más información, consulte [las instancias T2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-instances.html) en la *Guía del EC2 usuario de Amazon*.

**Cómo agregar una restricción de plantilla al producto Linux Desktop**

1. En la página **Detalles de la cartera**, elija la pestaña **Restricciones** y, a continuación, elija **Crear restricción**.

1. En la página **Crear restricción**, para **Producto**, seleccione **Linux Desktop**. A continuación, en **Tipo de restricción**, elija **Plantilla**.

1. En la sección **Restricciones de plantillas**, seleccione **Editor de texto**.

1. Pegue el siguiente contenido en el editor:

   ```
   {
     "Rules": {
       "Rule1": {
         "Assertions": [
           {
             "Assert" : {"Fn::Contains": [["t2.micro", "t2.small"], {"Ref": "InstanceType"}]},
             "AssertDescription": "Instance type should be t2.micro or t2.small"
           }
         ]
       }
     }
   }
   ```

1. Para la **descripción de la restricción**, introduzca **Small instance sizes**.

1.  Seleccione **Crear**. 

# Paso 6: agregar una restricción de lanzamiento para asignar un rol de IAM.
<a name="getstarted-launchconstraint"></a>

 Una restricción de lanzamiento designa una función de IAM que AWS Service Catalog asume cuando un usuario final lanza un producto. 

 Para este paso, debe añadir una restricción de lanzamiento al producto de escritorio Linux para poder AWS Service Catalog utilizar los recursos de IAM que componen la plantilla del producto. AWS CloudFormation 

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

1. AWS CloudFormation

1. Servicios incluidos en la AWS CloudFormation plantilla del producto

1. Acceso de lectura a la AWS CloudFormation plantilla en un bucket de Amazon S3 propiedad del servicio. 

Esta restricción de lanzamiento permitirá que el usuario final lance el producto y, después de lanzarlo, lo administre como producto aprovisionado. Para obtener más información, consulte [Restricciones de lanzamiento de AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/constraints-launch.html).

Sin una restricción de lanzamiento, es preciso conceder permisos de IAM adicionales a los usuarios finales para que puedan utilizar el producto Linux Desktop. Por ejemplo, la `ServiceCatalogEndUserAccess` política concede los permisos de IAM mínimos necesarios para acceder a la vista de la consola del usuario AWS Service Catalog final. 

El uso de una restricción de lanzamiento le permite seguir la práctica recomendada de IAM de reducir al mínimo los permisos de IAM de los usuarios finales. Para obtener más información, consulte [Conceder privilegios mínimos](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) en la *Guía del usuario de IAM*.

**Para agregar una restricción de lanzamiento**

1. Siga las instrucciones para [crear nuevas políticas en la pestaña JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) de la *Guía del usuario de IAM*. 

1. Pegue el siguiente documento de políticas JSON:
   +  `cloudformation`— Permite AWS Service Catalog todos los permisos para crear, leer, actualizar, eliminar, enumerar y etiquetar CloudFormation pilas. 
   +  `ec2`— Permite permisos AWS Service Catalog completos para enumerar, leer, escribir, aprovisionar y etiquetar los recursos de Amazon Elastic Compute Cloud (Amazon EC2) que forman parte del producto. AWS Service Catalog En función del AWS recurso que desee implementar, este permiso puede cambiar. 
   +  `ec2`— Crea una nueva política administrada para su AWS cuenta y adjunta la política administrada especificada a la función de IAM especificada. 
   +  `s3`— Permite el acceso a los buckets de Amazon S3 propiedad AWS Service Catalog de. Para implementar el producto, es AWS Service Catalog necesario acceder a los artefactos de aprovisionamiento. 
   +  `servicecatalog`— Permite AWS Service Catalog permisos para enumerar, leer, escribir, etiquetar y lanzar recursos en nombre del usuario final. 
   +  `sns`— Permite AWS Service Catalog permisos para enumerar, leer, escribir y etiquetar temas de Amazon SNS para la restricción de lanzamiento. 
**nota**  
 En función de los recursos subyacentes que desee implementar, es posible que deba modificar la política de JSON de ejemplo. 

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "cloudformation:CreateStack",
                   "cloudformation:DeleteStack",
                   "cloudformation:DescribeStackEvents",
                   "cloudformation:DescribeStacks",
                   "cloudformation:GetTemplateSummary",
                   "cloudformation:SetStackPolicy",
                   "cloudformation:ValidateTemplate",
                   "cloudformation:UpdateStack",
                   "ec2:*",
                   "servicecatalog:*",
                   "sns:*"
               ],
               "Resource": "*"
           },
           {
            "Effect":"Allow",
            "Action":[
               "s3:GetObject"
            ],
            "Resource":"*",
            "Condition":{
               "StringEquals":{
                  "s3:ExistingObjectTag/servicecatalog:provisioning":"true"
               }
            }
         }
       ]
   }
   ```

------

1. Elija **Siguiente**, **Etiquetas**.

1. Elija **Siguiente**, **Revisar**.

1. En **Revisar política**, ingrese **linuxDesktopPolicy** como **Nombre**.

1. Elija **Crear política**.

1. Seleccione **Roles** en el panel de navegación. Elija **Crear rol** y haga lo siguiente:

   1. En **Seleccione una entidad de confianza**, elija **AWS servicio** y, a continuación, en **Caso de uso para otros AWS servicios**, elija **Service Catalog**. Seleccione el caso de uso Service Catalog y, a continuación, elija **Siguiente**.

   1. Busque la **linuxDesktopPolicy**política y, a continuación, active la casilla de verificación.

   1. Elija **Siguiente**. 

   1. En **Role name**, escriba **linuxDesktopLaunchRole**.

   1. Elija **Crear rol**.

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

1. Elija la cartera **Engineering Tools**.

1. En la página **Detalles de la cartera**, elija la pestaña **Restricciones** y, a continuación, elija **Crear restricción**.

1. En **Producto**, elija **Linux Desktop** y en **Tipo de restricción** elija **Lanzar**.

1. Seleccione **Seleccionar el rol de IAM**. **A continuación, elija **linuxDesktopLaunchRol** y, a continuación, elija Crear.** 

# Paso 7: conceder a los usuarios finales acceso a la cartera
<a name="getstarted-deploy"></a>

Ahora que ha creado una cartera de productos y ha agregado un producto, puede conceder acceso a los usuarios finales.

**Requisitos previos**  
Si no ha creado un grupo de IAM para los usuarios finales, consulte [Conceder permisos a los usuarios AWS Service Catalog finales](getstarted-iamenduser.md).

**Para proporcionar acceso a la cartera**

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

1. Elija **Conceder acceso**.

1. En la pestaña **Grupos**, seleccione la casilla correspondiente al grupo de IAM de los usuarios finales.

1. Seleccione **Añadir acceso**.

# Paso 8: probar la experiencia del usuario final
<a name="getstarted-verify"></a>

Para comprobar que el usuario final puede acceder correctamente a la vista de la consola de usuario final y lanzar el producto, inicie sesión AWS como usuario final y realice esas tareas.

**Para comprobar que el usuario final puede obtener acceso a la consola del usuario final**

1. Siga las instrucciones de [Iniciar sesión como usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/console.html) en la *Guía del usuario de IAM*. 

1.  En la barra de menús, elija la AWS región en la que creó la `Engineering Tools` cartera. Para este tutorial, seleccione la **región us-east-1**.

1. Abre la AWS Service Catalog consola en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/)para ver:
   + **Products**: los productos que el usuario puede utilizar.
   + **Productos aprovisionados**: los productos aprovisionados que el usuario ha lanzado.

**Cómo comprobar que el usuario final puede lanzar el producto Linux Desktop**

Tenga en cuenta que para este tutorial debe seleccionar la **región us-east-1**.

1. En la sección **Productos** de la consola, seleccione **Linux Desktop**.

1. Elija **Lanzar producto** con el fin de iniciar el asistente para configurar el producto.

1. En la página **Lanzar: Linux Desktop**, introduzca **Linux-Desktop** como nombre del producto aprovisionado.

1. En la página **Parámetros**, escriba lo siguiente y, a continuación, elija **Siguiente**:
   +  **Server size** Elija **t2.micro**. 
   +  **Key pair**: seleccione el par de claves que creó en [Paso 2: Crear un par de claves](getstarted-keypair.md).
   +  **CIDR range**: escriba un intervalo de CIDR válido para la dirección IP desde la que se conectará a la instancia. Puede introducir el valor predeterminado (0.0.0.0/0) para permitir el acceso desde cualquier dirección IP, después, su dirección IP seguida de **/32** para restringir el acceso a su dirección IP únicamente, o una opción intermedia.

1. Seleccione **Lanzar producto** para lanzar la pila. La consola muestra la página de detalles de la pila de Linux-Desktop. El estado inicial del producto es **En proceso de cambio**. El lanzamiento del producto tarda varios minutos. AWS Service Catalog Para ver el estado actual, actualice el navegador. Una vez que el producto se ha lanzado, el estado es **Disponible**.

# Primeros pasos con un producto de Terraform
<a name="getstarted-Terraform"></a>

AWS Service Catalog permite un aprovisionamiento rápido y de autoservicio con control integrado para sus configuraciones de [ HashiCorp Terraform](https://developer.hashicorp.com/terraform/intro/terraform-editions). AWS Puede utilizarla AWS Service Catalog como una herramienta única para organizar, gobernar y distribuir sus configuraciones de Terraform a escala interna. AWS AWS Service Catalog es compatible con Terraform en varias funciones clave, como la catalogación de plantillas de Terraform estandarizadas y previamente aprobadas, el control de acceso, el control de versiones, el etiquetado y el uso compartido con otras cuentas. AWS En ella AWS Service Catalog, los usuarios finales ven una lista sencilla de productos y versiones a los que tienen acceso y, a continuación, pueden implementar esos productos en una sola acción. 

**nota**  
*Para seguir ofreciendo soporte a HashiCorp las tecnologías, como resultado de los recientes cambios en las licencias de Terraform, AWS Service Catalog cambié cualquier referencia anterior a *Terraform Open Source* por una referencia externa.* El tipo de producto externo incluye soporte para Terraform Community Edition, anteriormente conocida como Terraform Open Source. Para obtener más información e instrucciones sobre cómo migrar sus productos de código abierto y los productos aprovisionados de Terraform existentes al tipo de producto externo, consulte [Actualizar los productos existentes de Terraform Open Source y los productos aprovisionados al tipo de producto externo](update_terraform_open_source_to_external.md). 

Los pasos del siguiente tutorial lo ayudarán a empezar a utilizar un producto de Terraform en AWS Service Catalog. 

Como administrador o administradora del catálogo, trabaja en una cuenta de administrador central (cuenta central). Tanto los productos de Terraform Community Edition como de Terraform Cloud requieren un motor de aprovisionamiento Terraform, sobre el que puede obtener más información en [Motor de aprovisionamiento para Terraform Community Edition (tipo de producto externo)](getstarted-terraform-engine.md#getstarted-terraform-engine-os) y [Motor de aprovisionamiento para Terraform Cloud](getstarted-terraform-engine.md#getstarted-terraform-engine-cloud). 

Durante el tutorial, realiza las tareas siguientes en la cuenta de administrador:
+ Cree un producto de Terraform utilizando el tipo de producto *Terraform Cloud* o *Externo*. Service Catalog utiliza el tipo de producto externo para respaldar los productos de Terraform Community Edition. 
+ Asocia el producto a una cartera.
+ Cree una restricción de lanzamiento que permita a sus usuarios finales aprovisionar el producto
+ Etiquetado del producto
+ Comparta la cartera y el producto de Terraform con la cuenta de usuario final (cuenta radial) 

En el tutorial, se comparte una cartera mediante la opción de compartir organizaciones desde la cuenta central de administración, que también es la cuenta de administración de la organización. Para obtener más información sobre el uso compartido de organizaciones, consulte [Uso compartido de carteras](catalogs_portfolios_sharing_how-to-share.md). 

El AWS recurso contenido en el producto Terraform que creó en el tutorial es un sencillo bucket de Amazon S3. 

**nota**  
 Antes de comenzar, asegúrese de que ha realizado las acciones que se detallan en [Configuración AWS Service Catalog](setup.md). 

**Topics**
+ [

# Actualizar los productos existentes de Terraform Open Source y los productos aprovisionados al tipo de producto externo
](update_terraform_open_source_to_external.md)
+ [

# Requisito previo: Configurar su motor de aprovisionamiento Terraform
](getstarted-terraform-engine.md)
+ [

# Paso 1: descargar el archivo de configuración de Terraform
](getstarted-template-Terraform.md)
+ [

# Paso 2: crear un producto de Terraform
](getstarted-product-Terraform.md)
+ [

# Paso 3: Crear un AWS Service Catalog portafolio
](getstarted-portfolio-Terraform.md)
+ [

# Paso 4: añadir el producto a la cartera
](getstarted-portfolio-add-product-Terraform.md)
+ [

# Paso 5: crear roles de lanzamiento
](getstarted-launchrole-Terraform.md)
+ [

# Paso 6: añadir una restricción de lanzamiento a su producto de Terraform
](getstarted-launchconstraint-Terraform.md)
+ [

# Paso 7: conceder acceso al usuario final
](getstarted-deploy-Terraform.md)
+ [

# Paso 8: compartir la cartera con el usuario final
](getstarted-share-portfolio-end-user-Terraform.md)
+ [

# Paso 9: probar la experiencia del usuario final
](getstarted-verify-Terraform.md)
+ [

# Paso 10: monitorización de las operaciones de aprovisionamiento de Terraform
](getstarted-monitoring-Terraform.md)

# Actualizar los productos existentes de Terraform Open Source y los productos aprovisionados al tipo de producto externo
<a name="update_terraform_open_source_to_external"></a>

*Para continuar con el soporte de HashiCorp las tecnologías, como resultado de los recientes cambios en las licencias de Terraform, AWS Service Catalog cambié cualquier referencia anterior de *Terraform Open Source a External*.* El tipo de producto externo incluye soporte para Terraform Community Edition, anteriormente conocida como Terraform Open Source. AWS Service Catalog ya no es compatible con Terraform Open Source como tipo de producto válido para ningún producto *nuevo* o aprovisionado. Solo podrá actualizar o cancelar los recursos de Terraform Open Source existentes, incluidos las versiones de los productos y los productos aprovisionados.

Si aún no lo ha hecho, debe realizar la transición de todos los productos de Terraform Open Source y aprovisionados existentes a productos externos, mediante las instrucciones de esta sección. 

1. Actualice su motor de referencia de Terraform actual para incluir soporte para AWS Service Catalog los tipos de productos **externos** y de código **abierto de Terraform**. [Para obtener instrucciones sobre cómo actualizar su motor de referencia de Terraform, consulte nuestro repositorio. GitHub ](https://github.com/aws-samples/service-catalog-engine-for-terraform-os) 

1. Recree cualquier producto existente de Terraform Open Source utilizando el nuevo tipo de producto externo. 

1. Elimine cualquier producto existente que utilice el tipo de producto de Terraform Open Source.

1. Reaprovisione esos recursos restantes para utilizar el nuevo tipo de producto externo.

1. Cancele cualquier producto aprovisionado existente que utilice el tipo de producto de Terraform Open Source. 

Tras realizar la transición de sus productos existentes, utilice el tipo de producto externo para cualquier producto nuevo que utilice un archivo de configuración tar.gz. 

AWS Service Catalog apoyará a los clientes durante este cambio según sea necesario. Si estos cambios requieren un esfuerzo considerable para su cuenta o afectan a las cargas de trabajo esenciales de los productos, póngase en contacto con el representante de su cuenta para solicitar asistencia. 

# Requisito previo: Configurar su motor de aprovisionamiento Terraform
<a name="getstarted-terraform-engine"></a>

Como requisito previo para crear productos Terraform en AWS Service Catalog, debe instalar y configurar un motor de aprovisionamiento en su cuenta de administrador de Service Catalog (cuenta hub). El motor de aprovisionamiento es necesario tanto para los productos de Terraform Community Edition (que utilizan el tipo de producto externo) como para los productos de Terraform Cloud (que utilizan el tipo de producto Terraform Cloud). 

**nota**  
La configuración del motor se realiza una sola vez y tarda aproximadamente 30 minutos. 

## Motor de aprovisionamiento para Terraform Community Edition (tipo de producto externo)
<a name="getstarted-terraform-engine-os"></a>

AWS Service Catalog utiliza el tipo de producto *externo* para respaldar los productos de Terraform Community Edition. El tipo de producto *externo* también es compatible con otras herramientas de aprovisionamiento, como Pulumi, Ansible y Chef, entre otras, según la configuración del motor de aprovisionamiento. 

En el caso de los AWS Service Catalog productos que utilizan el tipo de producto externo con HashiCorp la edición comunitaria de Terraform, debe instalar y configurar un motor de aprovisionamiento de Terraform en su cuenta de AWS Service Catalog administrador (cuenta hub). AWS administra este motor y sus recursos. 

AWS Service Catalog proporciona un GitHub repositorio con instrucciones sobre cómo [instalar y configurar el motor de aprovisionamiento Terraform AWS proporcionado](https://github.com/aws-samples/service-catalog-engine-for-terraform-os/). La repo incluye la información siguiente: 
+ Herramientas necesarias para la instalación
+ Creación del código
+ Implementación en una cuenta AWS 
+ Información adicional sobre los flujos de trabajo de aprovisionamiento, el control de calidad y las limitaciones

## Motor de aprovisionamiento para Terraform Cloud
<a name="getstarted-terraform-engine-cloud"></a>

En el AWS Service Catalog caso de los productos que utilizan el tipo de producto Terraform Cloud con HashiCorp Terraform Cloud, debe instalar y configurar un motor de aprovisionamiento de Terraform en su AWS Service Catalog cuenta de administrador (cuenta hub). HashiCorp administra este motor en un entorno remoto. 

HashiCorp proporciona un GitHub repositorio con instrucciones sobre cómo configurar el [motor Terraform Cloud para AWS Service Catalog](https://github.com/hashicorp/aws-service-catalog-engine-for-tfc). La repo incluye la información siguiente: 
+ Herramientas necesarias para la instalación
+ Creación del código
+ Implementación en una cuenta AWS 
+ Información adicional sobre los flujos de trabajo de aprovisionamiento, el control de calidad y las limitaciones

# Paso 1: descargar el archivo de configuración de Terraform
<a name="getstarted-template-Terraform"></a>

 Puede usar un archivo de configuración de Terraform para crear y aprovisionar los productos de HashiCorp Terraform. Estas configuraciones son archivos de texto sin formato y describen los recursos que desea aprovisionar. Puede usar el editor de texto que prefiera para crear, actualizar y guardar las configuraciones. Para la creación de productos, debe cargar las configuraciones de Terraform como un **archivo tar.gz**. En este tutorial, se AWS Service Catalog proporciona un archivo de configuración sencillo para que pueda empezar. La configuración crea un bucket de Amazon S3. 

## Descargar el archivo de configuración
<a name="template-download"></a>

AWS Service Catalog proporciona un ejemplo de archivo de [https://github.com/aws-samples/service-catalog-engine-for-terraform-os/blob/main/sample-provisioning-artifacts/s3bucket.tar.gz?raw=true](https://github.com/aws-samples/service-catalog-engine-for-terraform-os/blob/main/sample-provisioning-artifacts/s3bucket.tar.gz?raw=true)configuración para que lo utilice en este tutorial. 

## Información general del archivo de configuración
<a name="template-overview"></a>

El texto del archivo de configuración de ejemplo es el siguiente:

```
variable "bucket_name" {
  type = string
}
provider "aws" {
}
resource "aws_s3_bucket" "bucket" {
  bucket = var.bucket_name
}
output regional_domain_name {
  value = aws_s3_bucket.bucket.bucket_regional_domain_name
}
```

**Configuración de recursos**

El archivo de configuración declara los recursos que se crearán al AWS Service Catalog aprovisionar el producto. Consta de las secciones siguientes:
+ **Variable** (opcional): las definiciones de valores que un usuario administrador (administrador de cuenta central) puede asignar para personalizar la configuración. Las variables proporcionan una interfaz coherente para cambiar el comportamiento de una configuración determinada. La etiqueta que sigue a la palabra clave variable es el nombre de la variable, que debe ser único entre todas las variables del mismo módulo. Este nombre se usa para asignar un valor externo a la variable y para hacer referencia al valor de la variable desde el módulo. 
+ **Proveedor** (opcional): el proveedor de servicios en la nube para el aprovisionamiento de recursos, es `AWS` decir. AWS Service Catalog solo admite `AWS` como proveedor. Como resultado, el motor de aprovisionamiento de Terraform reemplaza a cualquier otro proveedor que figure en la lista con `AWS`. 
+ **Recurso** (obligatorio): el recurso de AWS infraestructura para el aprovisionamiento. Para este tutorial, el archivo de configuración de Terraform especifica Amazon S3. 
+ **Salida** (opcional): la información o el valor obtenidos, similar a los valores obtenidos en un lenguaje de programación. Puede usar los datos de salida para configurar el flujo de trabajo de la infraestructura con herramientas de automatización. 

# Paso 2: crear un producto de Terraform
<a name="getstarted-product-Terraform"></a>

Tras instalar el motor de aprovisionamiento de Terraform, estará listo para crear un producto de HashiCorp Terraform en. AWS Service Catalog En este tutorial, se crea un producto de Terraform que contiene un bucket de Amazon S3 simple. 

**Cree un nuevo producto de Terraform**

1. Abra la AWS Service Catalog consola en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/)e inicie sesión como usuario administrador. 

1. Vaya a la sección **Administración** y, a continuación, seleccione **Lista de productos**. 

1. Seleccione **Crear producto**. 

1. En la página **Crear producto**, en la sección Detalles del producto, seleccione el tipo de producto **Externo** o **Terraform Cloud**. Service Catalog utiliza el tipo de producto *externo* para respaldar los productos de Terraform Community Edition. 

1. Introduzca los siguientes detalles de productos:
   + **Product name**: **Simple S3 bucket**
   + **Descripción del producto**: producto de Terraform que contiene un bucket de Amazon S3.
   + **Propietario**: **IT**
   + **Distribuidor**: *(en blanco)*

1. En la página **Detalles de la versión**, seleccione **Cargar un archivo de plantilla** y, a continuación, **Elegir archivo**. Seleccione el archivo que ha descargado en [Paso 1: descargar el archivo de configuración de Terraform](getstarted-template-Terraform.md). 

1. Introduzca lo siguiente:
   + **Nombre de la versión**: **v1.0**
   + **Descripción de la versión**: **Base Version**

1. En la sección **Detalles de soporte**, introduzca lo siguiente y, a continuación, seleccione **Crear producto**.
   + **Contacto para correo electrónico**: **ITSupport@example.com**
   + **Enlace de soporte**: **https://wiki.example.com/IT/support**
   + **Descripción de soporte**: **Contact the IT department for issues deploying or connecting to this product.**

1. Seleccione **Crear producto**. 

Tras crear correctamente el producto, AWS Service Catalog aparecerá un banner de confirmación en la página del producto. 

# Paso 3: Crear un AWS Service Catalog portafolio
<a name="getstarted-portfolio-Terraform"></a>

Puede crear un portafolio en su cuenta de AWS Service Catalog administrador (cuenta hub) para organizar y distribuir fácilmente los productos a las cuentas de los usuarios finales (cuentas habladas). 

**Para crear una cartera**

1. Abre la AWS Service Catalog consola en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/)e inicia sesión como administrador. 

1. En el panel de navegación izquierdo, elija **Carteras** y luego, **Crear cartera**. 

1. Escriba los siguientes valores:
   + **Portfolio name**: **S3 bucket**
   + **Descripción de la cartera**: **Sample portfolio for Terraform configurations. ** 
   + **Propietario**: **IT (it@example.com)** 

1. Seleccione **Crear**.

# Paso 4: añadir el producto a la cartera
<a name="getstarted-portfolio-add-product-Terraform"></a>

Después de crear una cartera, puede añadir el producto HashiCorp Terraform que creó en el paso 2. 

**Cómo agregar el producto a una cartera**

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

1.  Seleccione el producto de Terraform de bucket Simple S3 que creó en el paso 2 y, a continuación, seleccione **Acciones**. En el menú desplegable, seleccione **Añadir producto a la cartera**. AWS Service Catalog muestra el panel **Añadir un bucket de Simple S3 a la cartera**. 

1. Seleccione la cartera de bucket de S3 y, a continuación, desactive **Crear restricción de lanzamiento**. Creará la restricción de lanzamiento más adelante en el tutorial. 

1. Seleccione **Añadir producto a la cartera.** 

Después de añadir correctamente el producto a la cartera, AWS Service Catalog muestra un banner de confirmación en la página de la lista de productos. 

# Paso 5: crear roles de lanzamiento
<a name="getstarted-launchrole-Terraform"></a>

En este paso, creará un rol de IAM (rol de lanzamiento) que especificará los permisos que el motor de aprovisionamiento de Terraform AWS Service Catalog puede asumir cuando un usuario final lanza un HashiCorp producto de Terraform. 

 El rol de IAM (rol de lanzamiento) que asigne más adelante a su bucket simple de Amazon S3, producto de Terraform, como restricción de lanzamiento debe tener los siguientes permisos: 
+ Acceda a los AWS recursos subyacentes de su producto Terraform. En este tutorial, esto incluye el acceso a las operaciones `s3:CreateBucket*`, `s3:DeleteBucket*`, `s3:Get*`, `s3:List*` y `s3:PutBucketTagging` de Amazon S3. 
+ Acceso de lectura a la plantilla de Amazon S3 en un bucket AWS Service Catalog de Amazon S3 propio 
+ Acceso a las operaciones del grupo de recursos `CreateGroup`, `ListGroupResources`, `DeleteGroup` y `Tag` Estas operaciones permiten AWS Service Catalog administrar grupos de recursos y etiquetas

**Para crear un rol de lanzamiento en la cuenta AWS Service Catalog de administrador**

1. Mientras esté conectado a la cuenta de AWS Service Catalog administrador, siga las instrucciones para [crear nuevas políticas en la pestaña JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) de la *guía del usuario de IAM*. 

1. Cree una **política** para su producto de Terraform simple de bucket de Amazon S3. Esta política debe crearse antes de crear el rol de lanzamiento y consta de los siguientes permisos:
   +  `s3`— Permite permisos AWS Service Catalog completos para enumerar, leer, escribir, aprovisionar y etiquetar el producto Amazon S3. 
   +  `s3`— Permite el acceso a los buckets de Amazon S3 propiedad AWS Service Catalog de. Para implementar el producto, AWS Service Catalog requiere acceso a los artefactos de aprovisionamiento. 
   +  `resourcegroups`— Permite AWS Service Catalog crear, enumerar, eliminar y etiquetar Grupos de recursos de AWS. 
   +  `tag`— Permite permisos AWS Service Catalog de etiquetado. 
**nota**  
 En función de los recursos subyacentes que desee implementar, es posible que deba modificar la política de JSON de ejemplo. 

   Pegue el siguiente documento de políticas JSON: 

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "VisualEditor0",
               "Effect": "Allow",
               "Action": "s3:GetObject",
               "Resource": "*",
               "Condition": {
                   "StringEquals": {
                       "s3:ExistingObjectTag/servicecatalog:provisioning": "true"
                   }
               }
           },
           {
               "Action": [
                   "s3:CreateBucket*",
                   "s3:DeleteBucket*",
                   "s3:Get*",
                   "s3:List*",
                   "s3:PutBucketTagging"
               ],
               "Resource": "arn:aws:s3:::*",
               "Effect": "Allow"
           },
           {
               "Action": [
                   "resource-groups:CreateGroup",
                   "resource-groups:ListGroupResources",
                   "resource-groups:DeleteGroup",
                   "resource-groups:Tag"
               ],
               "Resource": "*",
               "Effect": "Allow"
           },
           {
               "Action": [
                   "tag:GetResources",
                   "tag:GetTagKeys",
                   "tag:GetTagValues",
                   "tag:TagResources",
                   "tag:UntagResources"
               ],
               "Resource": "*",
               "Effect": "Allow"
           }
       ]
   }
   ```

------

1. 

   1. Elija **Siguiente**, **Etiquetas**.

   1. Elija **Siguiente**, **Revisar**.

   1. En **Revisar política**, ingrese **S3ResourceCreationAndArtifactAccessPolicy** como **Nombre**.

   1. Elija **Crear política**.

1. En el panel de navegación, seleccione **Roles** y luego seleccione **Crear rol**. 

1. En **Seleccionar una entidad de confianza**, seleccione **Política de confianza personalizada** y, a continuación, introduzca la siguiente política de JSON:

1. Elija **Siguiente**. 

1. En la lista de **Políticas**, seleccione la `S3ResourceCreationAndArtifactAccessPolicy` que ha creado. 

1. Elija **Siguiente**. 

1. En **Nombre del rol**, ingrese **SCLaunch-S3product**.
**importante**  
Los nombres de las funciones de lanzamiento **deben** empezar por SCLaunch «» seguido del nombre de función deseado. 

1. Elija **Crear rol**.
**importante**  
Tras crear el rol de inicio en la cuenta de AWS Service Catalog administrador, también debe crear un rol de inicio idéntico en la cuenta del usuario AWS Service Catalog final. El rol de la cuenta de usuario final debe tener el mismo nombre e incluir la misma política que el rol de la cuenta de administrador.

**Para crear un rol de lanzamiento en la cuenta de usuario AWS Service Catalog final**

1. Inicie sesión como administrador en la cuenta de usuario final y, a continuación, siga las instrucciones para [Crear nuevas políticas en la pestaña JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create-console.html) en la *Guía del usuario de IAM*. 

1. Repita los pasos 2 y 10 descritos anteriormente en *Para crear un rol de lanzamiento en la cuenta de AWS Service Catalog administrador*. 

**nota**  
Al crear un rol de inicio en la cuenta del usuario AWS Service Catalog final, asegúrese de utilizar el mismo administrador **AccountId** en la política de confianza personalizada. 

Ahora que ha creado un rol de lanzamiento tanto en la cuenta de administrador como en la de usuario final, puede añadir una restricción de lanzamiento al producto. 

# Paso 6: añadir una restricción de lanzamiento a su producto de Terraform
<a name="getstarted-launchconstraint-Terraform"></a>

**importante**  
Debe crear una restricción de lanzamiento para los productos HashiCorp Terraform. Sin una restricción de lanzamiento, los usuarios finales no pueden aprovisionar el producto. 

Tras crear un rol de lanzamiento en su cuenta de administrador, estará listo para asociarlo a una restricción de lanzamiento en sus productos externos o de Terraform Cloud. 

Esta restricción de lanzamiento permitirá que el usuario final lance el producto y, después de lanzarlo, lo administre como producto aprovisionado. Para obtener más información, consulte [Restricciones de lanzamiento de AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/constraints-launch.html).

El uso de una restricción de lanzamiento le permite seguir la práctica recomendada de IAM de reducir al mínimo los permisos de IAM de los usuarios finales. Para obtener más información, consulte [Conceder privilegios mínimos](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) en la *Guía del usuario de IAM*.

**Cómo asignar una restricción de lanzamiento al producto**

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

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

1. Seleccione la cartera de **bucket de S3**.

1. En la página **Detalles de la cartera**, elija la pestaña **Restricciones** y, a continuación, elija **Crear restricción**.

1. En **Producto**, seleccione un **bucket Simple S3**. AWS Service Catalog selecciona automáticamente el tipo de restricción **Lanzamiento**.

1. **Elija **Introducir el nombre del rol y, a continuación**, elija -S3Product. SCLaunch** 

1. Seleccione **Crear**. 

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

# Paso 7: conceder acceso al usuario final
<a name="getstarted-deploy-Terraform"></a>

Tras aplicar la restricción de lanzamiento a su producto HashiCorp Terraform, estará listo para conceder el acceso a los usuarios finales de la cuenta de Spoke.

En este tutorial, se concede acceso a los usuarios finales mediante el uso compartido del nombre de entidad principal. Los nombres de entidad principal son nombres para grupos, roles y usuarios que los administradores pueden especificar en una cartera y luego compartirlos con la cartera. Al compartir el portafolio, AWS Service Catalog verifica si esos nombres principales ya existen. Si existen, asocia AWS Service Catalog automáticamente los principales de IAM coincidentes a la cartera compartida para conceder el acceso a los usuarios finales. Consulte [Compartir una cartera](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/catalogs_portfolios_sharing_how-to-share) para obtener más información. 

**Requisitos previos**  
Si no ha creado un grupo de IAM para los usuarios finales, consulte [Conceder permisos a los usuarios AWS Service Catalog finales](getstarted-iamenduser.md).

**Para proporcionar acceso a la cartera**

1. Vaya a la página **Carteras** y, a continuación, elija la cartera **S3 bucket**. 

1. Seleccione la pestaña **Acceso** y, a continuación, seleccione **Conceder acceso**. 

1. En el panel **Tipo de acceso**, seleccione **Nombre de entidad principal**. 

1. En el panel **Nombre de entidad principal**, seleccione el tipo de **Nombre de entidad principal** y, a continuación, introduzca el **Nombre** del usuario final deseado en la cuenta periférica. 

1. Elija **Conceder acceso**. 

# Paso 8: compartir la cartera con el usuario final
<a name="getstarted-share-portfolio-end-user-Terraform"></a>

El AWS Service Catalog administrador puede distribuir carteras con cuentas de usuario final mediante el uso account-to-account compartido o AWS Organizations compartido. En este tutorial compartirá su cartera con la organización desde la cuenta de administrador (cuenta central), que también es la cuenta de administración de la organización. 

**Cómo compartir la cartera desde la cuenta central de administración**

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 de bucket de S3. En el menú **Acciones**, elija **Compartir**. 

1. Seleccione **AWS Organizations** y, a continuación, filtre según su estructura organizativa. 

1. En el panel **Organización de AWS **, seleccione la cuenta de usuario final (cuenta periférica). 

   También puede seleccionar un **Nodo raíz** para compartir la cartera con toda la organización, una **unidad organizativa (OU) principal** o una **OU secundaria** de la organización en función de la estructura de la organización. Para obtener más información, consulte [Uso compartido de carteras](catalogs_portfolios_sharing_how-to-share.md). 

1. En el panel **Configuración de uso compartido**, seleccione **Uso compartido de entidad principal**. 

1. Elija **Compartir**. 

Tras compartir correctamente la cartera con los usuarios finales, el siguiente paso consiste en verificar la experiencia del usuario final y aprovisionar el producto de Terraform. 

# Paso 9: probar la experiencia del usuario final
<a name="getstarted-verify-Terraform"></a>

Para comprobar que los usuarios finales puedan acceder correctamente a la vista de la consola de usuario final y lanzar su **Simple S3 bucket** producto, inicie sesión AWS como usuario final y realice las siguientes tareas. 

**Para comprobar que el usuario final puede obtener acceso a la consola del usuario final**
+ Abra la AWS Service Catalog consola en [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/)para ver:
  + **Products**: los productos que el usuario puede utilizar.
  + **Productos aprovisionados**: los productos aprovisionados que el usuario ha lanzado.

**Cómo verificar que el usuario final puede lanzar el producto de Terraform**

1. En la sección **Productos** de la consola, seleccione **bucket Simple S3**.

1. Elija **Lanzar producto** con el fin de iniciar el asistente para configurar el producto.

1. En la página **Lanzar un bucket Simple S3**, introduzca **Amazon S3 product** como nombre del producto aprovisionado.

1. En la página **Parámetros**, escriba lo siguiente y, a continuación, elija **Siguiente**:
   +  **bucket\$1name**: proporciona un nombre único para el bucket de Amazon S3. Por ejemplo, **terraform-s3-product**. 

1. Seleccione **Lanzar producto**. La consola muestra la página de detalles de la pila para el lanzamiento del producto Amazon S3. El estado inicial del producto es **En proceso de cambio**. El lanzamiento del producto tarda varios minutos. AWS Service Catalog Para ver el estado actual, actualice el navegador. Tras el lanzamiento exitoso del producto, el estado es **Disponible**. 

   AWS Service Catalog crea un nuevo bucket de Amazon S3 denominado**terraform-s3-product**. 

# Paso 10: monitorización de las operaciones de aprovisionamiento de Terraform
<a name="getstarted-monitoring-Terraform"></a>

Si quieres supervisar las operaciones de aprovisionamiento, puedes revisar los CloudWatch registros de Amazon y cualquier flujo de trabajo AWS Step Functions de aprovisionamiento. 

Hay dos máquinas de estados para el flujo de trabajo de aprovisionamiento: 
+ `ManageProvisionedProductStateMachine`— AWS Service Catalog invoca esta máquina de estados al aprovisionar un nuevo producto de Terraform y al actualizar un producto aprovisionado de Terraform existente. 
+ `TerminateProvisionedProductStateMachine`— AWS Service Catalog invoca esta máquina de estados al cancelar un producto aprovisionado por Terraform existente. 

**Cómo ejecutar la máquina de estados de monitorización**

1. Abra la consola AWS de administración e inicie sesión como administrador en la cuenta del centro de administración donde está instalado el motor de aprovisionamiento de Terraform.

1. Abra **AWS Step Functions**. 

1. En el panel de navegación izquierdo, elija **Máquinas de estado**. 

1. Elija **ManageProvisionedProductStateMachine**. 

1. En la lista de **ejecuciones**, introduzca el ID del producto aprovisionado para localizar la ejecución. 
**nota**  
AWS Service Catalog crea el ID del producto aprovisionado al aprovisionar el producto. El ID del producto aprovisionado tiene el siguiente formato: **pp-1111pwtn[ID number]**. 

1. Elija un **ID de ejecución**. 

En la página de **detalles de ejecución** resultante, puede ver todos los pasos del flujo de trabajo de aprovisionamiento. También puede revisar los pasos fallidos para identificar la causa del error. 