Quando tento criar ou excluir uma regra do AWS Config para AWS Organizations, recebo um erro CREATE_FAILED ou DELETE_FAILED.
Breve descrição
Vários problemas podem fazer com que as regras de configuração da organização não funcionem, incluindo os seguintes exemplos:
- Permissões
- Contas de membros inativas
- Gravadores de configuração ausentes
Para resolver erros de regras de configuração da organização, conclua as seguintes etapas:
- Encontre os detalhes do status da regra da conta de membro.
- Solucione a causa da falha da regra.
Resolução
Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Encontre os detalhes do status da regra da conta de membro
Para encontrar os detalhes do status de falha e sucesso da regra da conta de membro, execute o comando get-organization-config-rule-detailed-status:
aws configservice get-organization-config-rule-detailed-status --organization-config-rule-name your-rule-name
Observação: substitua your-rule-name pelo nome da regra de configuração da sua organização.
Examine a saída ErrorCode e ErrorMessage para obter mais informações sobre por que a regra falha.
Solucione a causa da falha da regra
Verifique se as contas de membros estão ativas
Para verificar se todas as contas de membros estão ativas, execute o comando list-accounts:
aws organizations list-accounts --query 'Accounts[*].[Id, Status]' --output table
Configure o AWS Config para contas de membros
Para configurar o AWS Config para cada conta de membro, use o console, a AWS CLI ou o AWS CloudFormation. Depois de configurar o AWS Config para todas as contas de membros, execute a regra put-organization-config-rule para implantar a regra novamente.
Revise seus logs de eventos
Abra o console do AWS CloudTrail e escolha Histórico de eventos no painel de navegação. Para filtrar os logs, escolha Nome do evento na lista suspensa e digite PutOrganizationConfigRule ou DeleteOrganizationConfigRule no campo de pesquisa. Examine os resultados do log filtrado em busca de erros de OrganizationAccessDeniedException.
Atualizar a conta de membro do administrador delegado
Você deve fazer chamadas da conta gerencial do AWS Organizations ou de uma conta de membro do administrador delegado. Se você fizer chamadas, como a API PutOrganizationConfigRule API ou a DeleteOrganizationConfigRule API de fora dessas contas, as chamadas falharão.
Para identificar a conta de membro do administrador delegado, execute o comando list-delegated administrators:
aws organizations list-delegated-administrators --service-principal=config-multiaccountsetup.amazonaws.com
Atualize suas permissões
Se você receber erros de OrganizationAccessDeniedException, talvez não tenha as permissões necessárias. O perfil do AWS Identity and Access Management (AWS IAM) para o AWS Config deve incluir as seguintes permissões para criar e excluir regras de configuração da organização:
- PutConfigRule
- PutOrganizationConfigRule
- DeleteOrganizationConfigRule
Para obter mais informações, consulte Permissões para o perfil do IAM atribuída ao AWS Config.
Revise a mensagem de erro
Se você receber erros de ResourceInUseException, revise a mensagem de erro para identificar a causa.
- Se a mensagem de erro indicar que uma ação de remediação está associada à regra, resolva a ação de remediação.
- Se a mensagem de erro indicar que o status da regra não for CREATE_SUCCESSFUL, verifique se o perfil do IAM da conta de membro do AWS Config inclui as permissões DeleteConfigRule.
Crie uma regra de configuração da organização personalizada
Se a política de recursos da função do AWS Lambda não permitir que a entidade principal do serviço AWS Config invoque a política, execute o comando add-permission para fornecer permissões:
aws lambda add-permission --function-name function-name --region region --action "lambda:InvokeFunction" --principal config.amazonaws.com --source-account source-account --statement-id Allow
Observação: substitua function-name pelo nome da função do Lambda, a Região pela sua região da AWS e source-account pelo ID da conta gerencial.
Para conceder permissões para várias contas de membros em sua organização, o comando deve ser executado para cada conta de membro. Substitua a source-acount pelo ID de cada conta de membro.
Informações relacionadas
Por que minha regra do AWS Config não está funcionando?