Ações de atendimento do AWS Service Catalog - AWS Service Catalog

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Ações de atendimento do AWS Service Catalog

nota

AWS Service Catalog não suporta ações de atendimento para produtos Terraform Open Source ou Terraform Cloud.

O AWS Service Catalog permite que você reduza a manutenção administrativa e o treinamento do usuário final, sem deixar de cumprir as medidas de segurança e de conformidade. Com as ações de atendimento, o administrador pode permitir que usuários finais realizem tarefas operacionais, resolvam problemas, executem comandos aprovados ou solicitem permissões no AWS Service Catalog. Use documentos do AWS Systems Manager para definir ações de atendimento. Os documentos do AWS Systems Manager concedem acesso a ações predefinidas que implantam as melhores práticas da AWS, como a interrupção e reinicialização do Amazon EC2, e também é possível definir ações personalizadas.

Neste tutorial, você vai permitir que os usuários finais reiniciem uma instância do Amazon EC2. Adicione as permissões necessárias, defina a ação de atendimento, associe-a com um produto e teste a experiência do usuário final ao usar a ação com um produto provisionado.

Pré-requisitos

Este tutorial pressupõe que você tenha permissão total de administrador na AWS, que você já conhece o AWS Service Catalog e que você já tem um conjunto básico de produtos, portfólios e usuários. Se você não conhecer bem o AWS Service Catalog, conclua as tarefas Configuração e Conceitos básicos antes de usar este tutorial.

Etapa 1: Configurar permissões de usuários finais

Os usuários finais devem ter as permissões necessárias para visualizar e executar ações de atendimento específicas. Neste exemplo, o usuário final precisa de permissão para acessar o atributo de ações de serviço do AWS Service Catalog e para reiniciar o Amazon EC2.

Para atualizar as permissões
  1. Abra o console do AWS Identity and Access Management (IAM) em https://console.aws.amazon.com/iam/.

  2. No menu, localize grupos de usuários.

  3. Escolha os grupos que os usuários finais usarão para acessar os recursos do AWS Service Catalog. Neste exemplo, nós selecionamos o grupo de usuário final. Em sua própria implementação, escolha o grupo que é usado pelos usuários finais relevantes.

  4. Na guia Permissions (Permissões) da página de detalhes do grupo, crie uma nova política ou edite uma existente. Neste exemplo, adicionamos permissões à política existente selecionando a política personalizada criada para as permissões “Provisionar” e “Encerrar” no AWS Service Catalog.

  5. Na página Policy (Política), escolhaEdit Policy (Editar política) para adicionar as permissões necessárias. Você pode usar o editor visual ou o editor JSON para alterar a política. Neste exemplo, usamos o editor JSON para adicionar as permissões. Neste tutorial, adicione as seguintes permissões à 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": "*" } ] }
  6. Depois de editar a política, revise e aprove a alteração. Os usuários no grupo de usuários finais agora têm as permissões necessárias para reiniciar o Amazon EC2 no AWS Service Catalog.

Etapa 2: Criar uma ação de atendimento

Em seguida, crie uma ação de atendimento para reiniciar as instâncias do Amazon EC2.

  1. Abra o AWS Service Catalog console em https://console.aws.amazon.com/sc/.

  2. No menu, escolha Service actions (Ações de atendimento).

  3. Na página Ações de atendimento, escolha Criar ação.

  4. Na página Create action (Criar ação), selecione um documento do AWS Systems Manager para definir a ação de atendimento. A ação Reiniciar instância do Amazon EC2 é definida por um documento do AWS Systems Manager. Então, mantemos a opção padrão no menu suspenso, Documentos da Amazon.

  5. Pesquise e escolha a ação AWS-Restartec2Instance.

  6. Forneça um nome e uma descrição para a ação que faça sentido para o ambiente e a equipe. O usuário final verá esta descrição. Portanto, escolha algo que ajude a entender o que ela faz.

  7. Em Configuração de parâmetro e destino, escolha o parâmetro de documento SSM que será o destino da ação (por exemplo, o ID da instância) e escolha o destino do parâmetro. Selecione Add parameter (Adicionar parâmetro) para adicionar outros parâmetros.

  8. Em Permissions (Permissões), escolha uma função. Estamos usando permissões padrão para este exemplo. Outras configurações de permissões são possíveis e são definidas nesta página.

  9. Após revisar a configuração, escolha Create action (Criar ação).

  10. Na próxima página, uma confirmação é exibida quando a ação é criada e está pronta para uso.

Etapa 3: Associar a ação de atendimento a uma versão do produto

Depois de definir uma ação, você deve associar um produto a ela.

  1. Na página Ações de serviço, escolha AWS-RestartEC2instance e, em seguida, escolha Associar ação.

  2. Na página Associate action (Associar ação), escolha o produto no qual você quer que os usuários finais realizem as ações de atendimento. Neste exemplo, escolhemos o Linux Desktop.

  3. Selecione a versão do produto. Você pode usar a caixa de seleção superior para selecionar todas as versões.

  4. Escolha Associate action (Associar ação).

  5. Uma mensagem de confirmação é exibida na próxima página.

Você acabou de criar a ação de atendimento no AWS Service Catalog. A próxima etapa deste tutorial é usar a ação de atendimento como usuário final.

Etapa 4: Testar a experiência do usuário final

Os usuários finais podem executar ações de atendimento em produtos provisionados. Para os fins deste tutorial, o usuário final deve ter pelo menos um produto provisionado. O produto provisionado deve ser lançado a partir da versão de produto que você associou à ação de atendimento na etapa anterior.

Como acessar a ação de atendimento como usuário final
  1. Faça login no console do AWS Service Catalog como usuário final.

  2. No painel de navegação do AWS Service Catalog, escolha Provisioned products list (Lista de produtos provisionados). A lista mostra os produtos que são provisionados para a conta do usuário final.

  3. Na página Provisioned products list (Lista de produtos provisionados), escolha a instância provisionada.

  4. Na página Detalhes do produto provisionado, escolha Ações no canto superior direito e, depois, a ação AWS-RestartEC2instance.

  5. Confirme que você quer executar a ação personalizada. Você receberá a confirmação de que a ação foi enviada.

Etapa 5: Gerenciar ações de serviço com AWS CloudFormation

Você pode criar ações de serviço e suas associações com recursos AWS CloudFormation. Para mais informações, consulte o seguinte no Guia do usuário do AWS CloudFormation:

nota

Se você gerencia associações de ações de serviço com recursos AWS CloudFormation, não adicione nem remova ações de serviço por meio do AWS Command Line Interface ou AWS Management Console. Quando você executa uma atualização de pilha, todas as alterações nas ações de serviço feitas fora da AWS CloudFormation são substituídas.

Etapa 6: Solução de problemas

Se a execução da ação de serviço falhar, será possível encontrar a mensagem de erro na seção Outputs (Saídas) do evento de execução da ação de serviço na página Provisioned product (Produto provisionado). Veja a seguir as explicações para as mensagens de erro comuns que podem ser encontradas.

nota

O texto exato da mensagem de erro está sujeito a alterações, portanto, você deve evitar usá-los em qualquer tipo de processo automatizado.

Internal failure (Falha interna)

O AWS Service Catalog teve um erro interno. Tente novamente mais tarde. Se o erro persistir, entre em contato com o suporte ao cliente.

Ocorreu um erro (ThrottlingException) ao chamar a StartAutomationExecution operação

A execução da ação de serviço foi limitada pelo serviço de back-end, como o SSM.

Access denied while assuming the role (Acesso negado ao assumir a função)

O AWS Service Catalog não pôde assumir a função especificada na definição da ação de serviço. Certifique-se de que a entidade principal servicecatalog.amazonaws.com ou uma entidade principal regional, como servicecatalog.us-east-1.amazonaws.com, esteja na lista de permissões na política de confiança do perfil.

Ocorreu um erro (AccessDeniedException) ao chamar a StartAutomationExecution operação: O usuário não está autorizado a executar: ssm: StartAutomationExecution no recurso.

A função especificada na definição da ação de serviço não tem permissões para invocar ssm:. StartAutomationExecution Verifique se o perfil tem as permissões do SSM apropriadas.

Não é possível encontrar nenhum recurso com o tipo TargetTypeno produto provisionado

O produto provisionado não contém recursos que correspondam ao tipo de destino especificado no documento do SSM, como AWS::EC2::Instance. Verifique o produto provisionado para esses recursos ou verifique se o documento está correto.

Document with that name does not exist (Não existe um documento com esse nome)

O documento especificado na definição da ação de serviço não existe.

Failed to describe SSM Automation document (Falha ao descrever o documento de automação do SSM)

O AWS Service Catalog encontrou uma exceção desconhecida do SSM ao tentar descrever o documento especificado.

Failed to retrieve credentials for role (Falha ao recuperar credenciais para a função)

O AWS Service Catalog encontrou um erro desconhecido ao assumir a função especificada.

O parâmetro tem o valor InvalidValue"" não encontrado em {ValidValue1}, {ValidValue2}

O valor do parâmetro passado para o SSM não está na lista de valores permitidos para o documento. Verifique se os parâmetros fornecidos são válidos e tente novamente.

Erro de tipo de parâmetro O valor fornecido para não ParameterNameé uma string válida.

O valor do parâmetro passado para o SSM não é válido para o tipo no documento.

Parameter is not defined in service action definition (O parâmetro não está definido na definição da ação do serviço)

Um parâmetro passado para o AWS Service Catalog não está definido na definição da ação de serviço. É possível usar somente parâmetros definidos na definição da ação de serviço.

Falha na etapa ao executar/cancelar a ação. A mensagem de erro. Consulte o Guia de Solução de Problemas do Serviço de Automação para obter mais detalhes sobre o diagnóstico.

Uma etapa do documento de automação do SSM falhou. Consulte o erro na mensagem para solucionar mais problemas.

Os valores a seguir para o parâmetro não são permitidos porque não estão no produto provisionado: InvalidResourceId

O usuário solicitou ação em um recurso que não está no produto provisionado.

TargetType não definido para o documento de automação SSM

As ações de serviço exigem que os documentos de automação do SSM tenham um TargetType definido. Verifique seu documento de automação do SSM.