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.
Acciones de servicio de AWS Service Catalog
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 técnica de los usuarios finales a la vez que se cumplen las medidas de conformidad 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 se utilizan para definir acciones. Los documentos de AWS Systems Manager proporcionan acceso a acciones predefinidas que implementan las AWS prácticas recomendadas, como detener y reiniciar Amazon EC2, y también puede definir acciones personalizadas.
En este tutorial 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 aaprovisionado.
Requisitos previos
En este tutorial se supone que tiene todos los permisos de administrador de AWS, que ya está familiarizado con AWS Service Catalog y que ya tiene un conjunto básico de productos, paquetes y usuarios. Si no está familiarizado con AWS Service Catalog, complete la tareas de configuración y Introducción antes de utilizar este tutorial.
Temas
Paso 1: Configurar los permisos de usuario final
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 obtener acceso a la característica de AWS Service Catalog acciones de servicio de y para realizar un reinicio de Amazon EC2.
Para actualizar los permisos
-
Abra la AWS Identity and Access Management consola de IAM en https://console.aws.amazon.com/iam/
. -
En el menú, localice los grupos de usuarios.
-
Seleccione los grupos que los usuarios finales utilizarán para acceder a los recursos AWS Service Catalog. En este ejemplo, seleccionamos el grupo de usuarios finales. En su propia implementación, elija el grupo que utilizan los usuarios finales relevantes.
-
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, añadimos permisos a la política existente seleccionando la política personalizada creada para los permisos Aprovisionar y Terminar de AWS Service Catalog del grupo.
-
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:
{ "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": "*" } ] }
-
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 continuación, creará una acción de servicio para reiniciar las instancias Amazon EC2.
-
Abra la AWS Service Catalog consola en https://console.aws.amazon.com/sc/
. -
En el menú, elija Service actions (Acciones de servicio).
-
En la página acciones de servicio, elija Crear acción.
-
En la página Create action (Crear acción), elija un documento de AWS Systems Manager para definir la acción de servicio. La acción de reinicio de instancia Amazon EC2 está definida por un AWS Systems Manager documento, por lo que mantenemos la opción predeterminada en el menú desplegable Documentos de Amazon.
-
Busque y seleccione la acción AWS-RestartEC2Instance.
-
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.
-
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.
-
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.
-
Después de revisar la configuración, elija Create action (Crear acción).
-
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
Después de definir una acción, debe asociar un producto a dicha acción.
-
En la página acciones de servicio, elija AWS-RestartEC2instance y a continuación, Asociar acción.
-
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).
-
Seleccione una versión del producto. Tenga en cuenta que puede utilizar la casilla de verificación superior para seleccionar todas las versiones.
-
Elija Associate action (Asociar acción).
-
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
Los usuarios finales pueden realizar acciones de servicio en los productos aaprovisionados. Para los fines de este tutorial, el usuario final debe tener al menos un producto aaprovisionado. El producto aaprovisionado 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
-
Inicie sesión en la consola de AWS Service Catalog como usuario final.
-
En el panel de AWS Service Catalog, en el panel de navegación, seleccione Provisioned products list (Lista de productos aaprovisionados). La lista muestra los productos que se aprovisionan para la cuenta del usuario final.
-
En la página Provisioned products list (Lista de productos aaprovisionados), elija la instancia que está aprovisionada.
-
En la página Detalles de producto aaprovisionado, elija Acciones en la parte superior derecha y, a continuación, seleccione la acción AWSAWS-RestartEC2instance.
-
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 de servicio con AWS CloudFormation
Puede crear acciones de servicio y sus asociaciones con los recursos de AWS CloudFormation. Para obtener más información, consulte lo indicado en la Guía del usuario de AWS CloudFormation:
nota
Si administra las asociaciones de acciones de servicio con recursos de AWS CloudFormation, no añada ni elimine acciones de servicio mediante el comando AWS Command Line Interface oAWS Management Console. Cuando actualiza una pila, se sustituyen todos los cambios en las acciones del servicio que se hayan realizado fuera de AWS CloudFormation.
Paso 6: Solución de problemas
Si la ejecución de la acción de servicio produce un error, puede encontrar el mensaje de error en la sección Outputs (Salidas) del evento de ejecución de acción de servicio en la página Provisioned product (Producto aaprovisionado). 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 experimentó 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 el rol especificado en la definición de la acción del 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 aaprovisionado no contiene ningún recurso que coincida con el tipo de destino especificado en el documento de AWS, como AWS::EC2::Instance. Compruebe el producto aaprovisionado 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 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 el rol especificado.
El parámetro tiene el valor «InvalidValue
» y no se encuentra en {ValidValue1}, {ValidValue2
}
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 a AWS Service Catalog que no está definido en la definición de la acción del servicio. Solo puede utilizar parámetros definidos en la definición de acción del servicio.
El paso falla cuando está ejecutando/cancelando la acción. Mensaje de error.
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 aaprovisionado.
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.