Compartilhar painéis do CloudWatch - Amazon CloudWatch

Compartilhar painéis do CloudWatch

É possível compartilhar seus painéis do CloudWatch com pessoas que não têm acesso à conta da AWS. Isso permite que compartilhar painéis entre equipes, com partes interessadas e com pessoas externas a sua organização. É possível até exibir painéis em telas grandes em áreas de equipe ou incorporá-los a Wikis e outras páginas da Web.

Atenção

Todas as pessoas com quem você compartilhar o painel receberão as permissões listadas em Permissões concedidas a pessoas com quem você compartilha o painel para a conta. Se você compartilhar o painel publicamente, todos os que tiverem o link para o painel terão essas permissões.

As permissões cloudwatch:GetMetricData e ec2:DescribeTags não podem ter escopo para métricas específicas ou instâncias do EC2. Portanto, as pessoas com acesso ao painel podem consultar todas as métricas do CloudWatch e os nomes e etiquetas de todas as instâncias do EC2 na conta.

Ao compartilhar painéis, você pode designar quem pode exibir o painel de três formas:

  • Compartilhe um só painel e atribua até cinco endereços de e-mail específicos de pessoas que poderão visualizar o painel. Cada um desses usuários cria sua própria senha, que devem inserir para exibir o painel.

  • Compartilhe um único painel publicamente, de modo que qualquer pessoa que tenha o link possa visualizar o painel.

  • Compartilhe todos os painéis do CloudWatch de sua conta e especifique um provedor de autenticação única (SSO) de terceiros para acesso ao painel. Todos os usuários que são membros da lista desse provedor de SSO podem acessar todos os painéis da conta. Para habilitar isso, integre o provedor de SSO ao Amazon Cognito. O provedor de SSO deve oferecer suporte a Security Assertion Markup Language (SAML). Para obter mais informações sobre o Amazon Cognito, consulte O que é o Amazon Cognito?

O compartilhamento de um painel não gera cobranças, mas os widgets dentro de um painel compartilhado incorrem em cobranças de acordo com as taxas padrão do CloudWatch. Para obter mais informações sobre os preços do CloudWatch, consulte Preço do Amazon CloudWatch.

Quando você compartilha um painel, os recursos do Amazon Cognito são criados na região Leste dos EUA (Norte da Virgínia).

Importante

Não modifique nomes e identificadores de recursos criados pelo processo de compartilhamento do painel. Isso inclui recursos do Amazon Cognito e do IAM. A modificação desses recursos pode causar uma funcionalidade inesperada e incorreta dos painéis compartilhados.

nota

Se você compartilhar um painel contendo widgets métricos com anotações de alarme, as pessoas com as quais você compartilhar o painel não verão esses widgets. Em vez disso, elas verão um widget em branco com uma mensagem informando que o widget não está disponível. Você ainda verá widgets métricos com anotações de alarme quando você mesmo visualizar o painel.

Permissões necessárias para compartilhar um painel

Para poder compartilhar painéis usando qualquer um dos métodos a seguir e ver quais painéis já foram compartilhados, é necessário fazer login como um usuário ou com um perfil do IAM que tenha determinadas permissões.

Para poder compartilhar painéis, seu usuário ou perfil do IAM deve incluir as permissões contidas na instrução de política a seguir:

{ "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:CreatePolicy", "iam:AttachRolePolicy", "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/service-role/CWDBSharing*", "arn:aws:iam::*:policy/*" ] }, { "Effect": "Allow", "Action": [ "cognito-idp:*", "cognito-identity:*", ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "cloudwatch:GetDashboard", ], "Resource": [ "*" // or the ARNs of dashboards that you want to share ] }

Para ser capaz de ver quais painéis são compartilhados, mas não de compartilhar painéis, um usuário ou perfil do IAM pode incluir uma instrução de política semelhante à seguinte:

{ "Effect": "Allow", "Action": [ "cognito-idp:*", "cognito-identity:*" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "cloudwatch:ListDashboards", ], "Resource": [ "*" ] }

Permissões concedidas a pessoas com quem você compartilha o painel

Ao compartilhar um painel, o CloudWatch cria uma função do IAM na conta, que dá as seguintes permissões às pessoas com quem você compartilha o painel:

  • cloudwatch:GetInsightRuleReport

  • cloudwatch:GetMetricData

  • cloudwatch:DescribeAlarms

  • ec2:DescribeTags

Atenção

Todas as pessoas com quem você compartilhar o painel receberão essas permissões listadas para a conta. Se você compartilhar o painel publicamente, todos os que tiverem o link para o painel terão essas permissões.

As permissões cloudwatch:GetMetricData e ec2:DescribeTags não podem ter escopo para métricas específicas ou instâncias do EC2. Portanto, as pessoas com acesso ao painel podem consultar todas as métricas do CloudWatch e os nomes e etiquetas de todas as instâncias do EC2 na conta.

Quando você compartilha um painel, por padrão, as permissões criadas pelo CloudWatch restringem o acesso somente aos alarmes e às regras do Contributor Insights que estão no painel quando ele é compartilhado. Se você adicionar novos alarmes ou regras do Contributor Insights ao painel e quiser que eles também sejam vistos pelas pessoas com quem compartilhou o painel, atualize a política para permitir esses recursos.

Compartilhar um único painel com usuários específicos

Siga as etapas nesta seção para compartilhar um painel com até cinco endereços de e-mail que você escolher.

nota

Por padrão, todos os widgets do CloudWatch Logs no painel não são visíveis para as pessoas com quem você compartilha o painel. Para ter mais informações, consulte Permitir que as pessoas com quem você compartilha vejam widgets de tabelas de logs.

Por padrão, todos os widgets de alarmes compostos no painel não são visíveis para as pessoas com quem você compartilha o painel. Para ter mais informações, consulte Permitir que as pessoas com quem você compartilha vejam alarmes compostos.

Para compartilhar um painel com usuários específicos
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Painéis.

  3. Escolha o nome de seu painel.

  4. Escolha Actions (Ações), Share dashboard (Compartilhar painel).

  5. Ao lado de Share your dashboard and require a username and password (Compartilhar painel e solicitar um nome de usuário e senha), escolha Start sharing (Começar a compartilhar).

  6. Em Add email addresses (Adicionar endereços de e-mail), insira os endereços de e-mail com os quais você deseja compartilhar o painel. É possível incluir até cinco endereços de e-mail.

  7. Quando todos os endereços de e-mail forem inseridos, leia o contrato e marque a caixa de confirmação. Em seguida, escolha Preview policy (Pré-visualizar política).

  8. Confirme se os recursos que serão compartilhados são os que você deseja e escolha Confirm and generate shareable link (Confirmar e gerar link compartilhável).

  9. Na página seguinte, escolha Copy link to clipboard (Copiar link para área de transferência). Em seguida, você pode colar este link no e-mail e enviá-lo aos usuários convidados. Eles receberão automaticamente um e-mail separado com seu nome de usuário e uma senha temporária para usar para se conectar ao painel.

Compartilhar um único painel publicamente

Siga as etapas desta seção para compartilhar um painel publicamente. Isso pode ser útil para exibir o painel em uma tela grande em uma sala de equipe ou incorporá-lo a uma página Wiki.

Importante

Compartilhar um painel publicamente o torna acessível a qualquer pessoa que tenha o link, sem autenticação. Faça isso somente para painéis que não contenham informações confidenciais.

nota

Por padrão, todos os widgets do CloudWatch Logs no painel não são visíveis para as pessoas com quem você compartilha o painel. Para ter mais informações, consulte Permitir que as pessoas com quem você compartilha vejam widgets de tabelas de logs.

Por padrão, todos os widgets de alarmes compostos no painel não são visíveis para as pessoas com quem você compartilha o painel. Para ter mais informações, consulte Permitir que as pessoas com quem você compartilha vejam alarmes compostos.

Para compartilhar um painel publicamente
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Painéis.

  3. Escolha o nome de seu painel.

  4. Escolha Actions (Ações), Share dashboard (Compartilhar painel).

  5. Ao lado de Share your dashboard publicly (Compartilhar painel publicamente), escolha Start sharing (Comece a compartilhar).

  6. Digite Confirm na caixa de texto.

  7. Leia o contrato e marque a caixa de confirmação. Em seguida, escolha Preview policy (Pré-visualizar política).

  8. Confirme se os recursos que serão compartilhados são os que você deseja e escolha Confirm and generate shareable link (Confirmar e gerar link compartilhável).

  9. Na página seguinte, escolha Copy link to clipboard (Copiar link para área de transferência). Então você pode compartilhar o link. Qualquer pessoa com quem você compartilhar o link poderá acessar o painel, sem fornecer credenciais.

Compartilhe todos os painéis do CloudWatch da conta usando SSO

Use as etapas desta seção para compartilhar todos os painéis de sua conta com usuários usando autenticação única (SSO).

nota

Por padrão, todos os widgets do CloudWatch Logs no painel não são visíveis para as pessoas com quem você compartilha o painel. Para ter mais informações, consulte Permitir que as pessoas com quem você compartilha vejam widgets de tabelas de logs.

Por padrão, todos os widgets de alarmes compostos no painel não são visíveis para as pessoas com quem você compartilha o painel. Para ter mais informações, consulte Permitir que as pessoas com quem você compartilha vejam alarmes compostos.

Para compartilhar seus painéis do CloudWatch com usuários que estão na lista de um provedor de SSO
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Painéis.

  3. Escolha o nome de seu painel.

  4. Escolha Actions (Ações), Share dashboard (Compartilhar painel).

  5. Escolha Go to CloudWatch Settings (Acessar configurações do CloudWatch).

  6. Se o provedor de SSO que você deseja não estiver listado em Available SSO providers (Provedores de SSO disponíveis), escolha Manage SSO providers (Gerenciar provedores de SSO) e siga as instruções em Configurar SSO para compartilhar o painel do CloudWatch.

    Então, retorne ao console do CloudWatch e atualize o navegador. O provedor de SSO que você habilitou deverá aparecer na lista.

  7. Escolha o provedor de SSO desejado na lista Available SSO providers (Provedores de SSO disponíveis).

  8. Escolha Salvar alterações.

Configurar SSO para compartilhar o painel do CloudWatch

Para configurar o compartilhamento do painel por meio de um provedor de autenticação única de terceiros que ofereça suporte a SAML, siga estas etapas.

Importante

É altamente recomendável não compartilhar painéis usando um provedor de SSO não SAML. Fazer isso causa o risco de permitir acidentalmente que terceiros acessem os painéis de sua conta.

Para configurar um provedor de SSO para habilitar o compartilhamento de painel
  1. Integre o provedor de SSO ao Amazon Cognito. Para mais informações, consulte Integrar provedores de identidade SAML de terceiros com grupos de usuários do Amazon Cognito

  2. Baixe o arquivo XML de metadados do provedor de SSO.

  3. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  4. No painel de navegação, selecione Configurações.

  5. Na seção Dashboard sharing (Compartilhar painel), escolha Configure (Configurar).

  6. Selecione Manage SSO providers (Gerenciar provedores de SSO).

    Isso abrirá o console do Amazon Cognito na região Leste dos EUA (Norte da Virgínia) (us-east-1). Se você não visualizar User Pools (Grupos de usuários), o console do Amazon Cognito pode estar aberto em uma região diferente. Se for o caso, altere a região para Leste dos EUA (Norte da Virgínia) us-east-1 e prossiga para as próximas etapas.

  7. Selecione o grupo CloudWatchDashboardSharing.

  8. No painel de navegação, escolha Identity providers (Provedores de identidade).

  9. Escolha SAML.

  10. Insira um nome para o provedor de SSO em Provider name (Nome do provedor).

  11. Escolha Select file (Selecionar arquivo) e selecione o arquivo XML de metadados baixado na etapa 1.

  12. Escolha Create provider (Criar provedor).

Ver quantos de seus painéis são compartilhados

É possível usar o console do CloudWatch para ver quantos de seus painéis do CloudWatch estão sendo compartilhados com outras pessoas no momento.

Para ver quantos de seus painéis estão sendo compartilhados
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, selecione Configurações.

  3. A seção Dashboard sharing (Compartilhamento de painéis) exibe quantos painéis estão sendo compartilhados.

  4. Para ver quais painéis estão sendo compartilhados, escolha number dashboards shared (número de painéis compartilhados) em Username and password (Nome de usuário e senha) e em Public dashboards (Painéis públicos).

Ver quais painéis estão sendo compartilhados

É possível usar o console do CloudWatch para ver quais de seus painéis estão sendo compartilhados com outras pessoas no momento.

Para ver quais painéis estão sendo compartilhados
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Painéis.

  3. Na lista de painéis, veja a coluna Share (Compartilhar). Os painéis que têm o ícone preenchido nesta coluna estão sendo compartilhados no momento.

  4. Para ver com quais usuários um painel está sendo compartilhado, escolha o nome do painel e escolha Actions (Ações), Share dashboard (Compartilhar painel).

    A página Share dashboard dashboard name (Compartihar nome do painel) exibe como o painel está sendo compartilhado. Se desejar, você pode interromper o compartilhamento do painel escolhendo Stop sharing (Interromper o compartilhamento).

Interromper o compartilhamento de um ou mais painéis

Você pode interromper o compartilhamento de um único painel compartilhado ou de todos os painéis compartilhados de uma só vez.

Para interromper o compartilhamento de um único painel
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Painéis.

  3. Escolha o nome do painel compartilhado.

  4. Escolha Actions (Ações), Share dashboard (Compartilhar painel).

  5. Escolha Stop sharing (Interromper o compartilhamento).

  6. Na caixa de confirmação, escolha Stop sharing (Interromper compartilhamento).

Para interromper o compartilhamento de todos os painéis compartilhados
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, selecione Configurações.

  3. Na seção Dashboard sharing (Compartilhamento de painéis), escolha Stop sharing all dashboards (Interromper o compartilhamento de todos os painéis).

  4. Na caixa de diálogo de confirmação, selecione Stop sharing all dashboards (Interromper o compartilhamento de todos os painéis).

Revisar permissões de painel compartilhadas e alterar o escopo de permissão

Use as etapas nesta seção para revisar as permissões dos usuários de seus painéis compartilhados ou alterar o escopo das permissões de paineis compartilhados.

Para revisar permissões de painéis compartilhados
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Painéis.

  3. Escolha o nome do painel compartilhado.

  4. Escolha Actions (Ações), Share dashboard (Compartilhar painel).

  5. Em Resources (Recursos), escolha IAM Role (Função do IAM).

  6. No console do IAM, escolha a política exibida.

  7. (Opcional) Para limitar os alarmes que os usuários do painel compartilhado podem ver, escolha Edit policy (Editar política) e mova a permissão cloudwatch:DescribeAlarms de sua posição atual para uma nova instrução Allow que lista os ARNs apenas dos alarmes que você deseja que sejam vistos pelos usuários do painel compartilhado. Veja o exemplo a seguir.

    { "Effect": "Allow", "Action": "cloudwatch:DescribeAlarms", "Resource": [ "AlarmARN1", "AlarmARN2" ] }

    Nesse caso, certifique-se de remover a permissão cloudwatch:DescribeAlarms de uma seção da política atual que se parece com esta:

    { "Effect": "Allow", "Action": [ "cloudwatch:GetInsightRuleReport", "cloudwatch:GetMetricData", "cloudwatch:DescribeAlarms", "ec2:DescribeTags" ], "Resource": "*" }
  8. (Opcional) Para limitar o escopo das regras do Contributor Insights que os usuários do painel compartilhado podem ver, escolha Edit policy (Editar política) e mova cloudwatch:GetInsightRuleReport de sua posição atual para uma nova instrução Allow que lista os ARNs apenas das regras do Contributor Insights que você deseja que sejam vistos pelos usuários do painel compartilhado. Veja o exemplo a seguir.

    { "Effect": "Allow", "Action": "cloudwatch:GetInsightRuleReport", "Resource": [ "PublicContributorInsightsRuleARN1", "PublicContributorInsightsRuleARN2" ] }

    Nesse caso, certifique-se de remover cloudwatch:GetInsightRuleReport de uma seção da política atual que se parece com esta:

    { "Effect": "Allow", "Action": [ "cloudwatch:GetInsightRuleReport", "cloudwatch:GetMetricData", "cloudwatch:DescribeAlarms", "ec2:DescribeTags" ], "Resource": "*" }

Permitir que as pessoas com quem você compartilha vejam alarmes compostos

Por padrão, quando você compartilha um painel, os widgets de alarmes compostos no painel não são visíveis para as pessoas com quem você compartilha o painel. Para que widgets de alarmes compostos fiquem visíveis, é necessário adicionar uma permissão DescribeAlarms: * à política de compartilhamento do painel. Essa permissão deve ser semelhante a esta:

{ "Effect": "Allow", "Action": "cloudwatch:DescribeAlarms", "Resource": "*" }
Atenção

A instrução de política anterior dá acesso a todos os alarmes da conta. Para reduzir o escopo de cloudwatch:DescribeAlarms, é necessário usar uma instrução Deny. É possível adicionar uma instrução Deny à política e especificar os ARNs dos alarmes que você deseja bloquear. Essa instrução de negação deve ser semelhante a esta:

{ "Effect": "Allow", "Action": "cloudwatch:DescribeAlarms", "Resource": "*" }, { "Effect": "Deny", "Action": "cloudwatch:DescribeAlarms", "Resource": [ "SensitiveAlarm1ARN", "SensitiveAlarm1ARN" ] }

Permitir que as pessoas com quem você compartilha vejam widgets de tabelas de logs

Por padrão, quando você compartilha um painel, os widgets do CloudWatch Logs Insights que estão no painel não são visíveis para as pessoas com quem você compartilha o painel. Isso afeta os widgets do CloudWatch Logs Insights que existem agora e os que são adicionados ao painel após o compartilhamento.

Para que essas pessoas possam ver widgets do CloudWatch Logs, é necessário adicionar permissões à função do IAM para compartilhamento de painel.

Para permitir que as pessoas com quem você compartilha um painel vejam os widgets do CloudWatch Logs
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Painéis.

  3. Escolha o nome do painel compartilhado.

  4. Escolha Actions (Ações), Share dashboard (Compartilhar painel).

  5. Em Resources (Recursos), escolha IAM Role (Função do IAM).

  6. No console do IAM, escolha a política exibida.

  7. Selecione Edit policy (Editar política) e adicione a instrução a seguir. Na nova instrução, recomendamos especificar os ARNs apenas dos grupos de log que você deseja compartilhar. Veja o exemplo a seguir.

    { "Effect": "Allow", "Action": [ "logs:FilterLogEvents", "logs:StartQuery", "logs:StopQuery", "logs:GetLogRecord", "logs:DescribeLogGroups" ], "Resource": [ "SharedLogGroup1ARN", "SharedLogGroup2ARN" ] },
  8. Escolha Save Changes (Salvar alterações).

Se sua política do IAM para compartilhamento de painel já incluir essas cinco permissões com * como o recurso, é altamente recomendável alterar a política e especificar somente os ARNs dos grupos de logs que você deseja compartilhar. Por exemplo, se a seção Resource para essas permissões foi a seguinte:

"Resource": "*"

Altere a política para especificar somente os ARNs dos grupos de logs que você deseja compartilhar, como no exemplo a seguir:

"Resource": [ "SharedLogGroup1ARN", "SharedLogGroup2ARN" ]

Permitir que as pessoas com quem você compartilha vejam widgets personalizados

Por padrão, quando você compartilha um painel, os widgets personalizados que estão no painel não são visíveis para as pessoas com quem você compartilha o painel. Isso afeta os widgets personalizados que existem agora e os que são adicionados ao painel após o compartilhamento.

Para que essas pessoas possam ver widgets personalizados, é necessário adicionar permissões à função do IAM para compartilhamento de painel.

Para permitir que as pessoas com quem você compartilha um painel vejam os widgets personalizados
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Painéis.

  3. Escolha o nome do painel compartilhado.

  4. Escolha Actions (Ações), Share dashboard (Compartilhar painel).

  5. Em Resources (Recursos), escolha IAM Role (Função do IAM).

  6. No console do IAM, escolha a política exibida.

  7. Selecione Edit policy (Editar política) e adicione a instrução a seguir. Na nova instrução, recomendamos especificar os ARNs apenas das funções do Lambda que você deseja compartilhar. Veja o exemplo a seguir.

    { "Sid": "Invoke", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "LambdaFunction1ARN", "LambdaFunction2ARN" ] }
  8. Escolha Save Changes (Salvar alterações).

Se sua política do IAM para compartilhamento de painel já incluir essa permissão com * como recurso, é altamente recomendável alterar a política e especificar apenas os ARNs das funções do Lambda que você deseja compartilhar. Por exemplo, se a seção Resource para essas permissões foi a seguinte:

"Resource": "*"

Altere a política para especificar somente os ARNs dos widgets personalizados que você deseja compartilhar, como no exemplo a seguir:

"Resource": [ "LambdaFunction1ARN", "LambdaFunction2ARN" ]