Marcando seus Recursos AWS IoT Wireless - AWS IoT Wireless

Marcando seus Recursos AWS IoT Wireless

Para ajudar no gerenciamento e na organização de seus dispositivos, gateways, destinos e perfis, é possível, opcionalmente, atribuir seus próprios metadados a cada um desses recursos em forma de tags. Esta seção descreve as tags e mostra como criá-las. O AWS IoT Wireless não tem grupos de faturamento e utiliza os mesmos grupos de faturamento usados pelo AWS IoT Core. Para obter mais informações, consulte Billing groups na documentação do AWS IoT Core.

Conceitos Básicos de Tags

Quando você tem vários recursos do AWS IoT Wireless do mesmo tipo, é possível utilizar tags para categorizá-los de diferentes formas (por exemplo, por finalidade, proprietário ou ambiente). Isso ajuda a identificar rapidamente um recurso com base nas tags que você atribuiu a ele.

Cada tag consiste em uma chave e em um valor opcional, ambos definidos por você. Por exemplo, é possível definir um conjunto de tags para um grupo de dispositivos LoRaWAN para os quais o respectivo firmware está sendo atualizado. Para gerenciar seus recursos mais facilmente, recomendamos que você crie um conjunto consistente de chaves de tags que atenda às suas necessidades para cada tipo de recurso.

Você pode pesquisar e filtrar recursos conforme as tags que adicionar ou aplicar. Você também pode utilizar tags para controlar o acesso aos recursos utilizando políticas do IAM e tags do grupo de faturamento para categorizar e monitorar os custos.

Criar e gerenciar tags

É possível criar e gerenciar tags utilizando o Editor de tags no AWS Management Console, no AWS IoT Wireless ou na AWS CLI.

Usar o console

Para facilitar o uso, o Tag Editor no AWS Management Console fornece uma forma central e unificada para criar e gerenciar suas tags. Para obter mais informações, consulte Como trabalhar com o Tag Editor no Como trabalhar com o AWS Management Console.

Como usar a API ou a CLI

Também é possível utilizar a API ou a CLI e associar as tags a dispositivos sem fio, gateways, perfis e destinos ao criá-las utilizando o campo Tags nos seguintes comandos:

Atualizar tags ou listar tags de recursos

Você pode adicionar, modificar ou excluir tags de recursos existentes que oferecem suporte a marcação, usando os seguintes comandos:

É possível editar chaves de tags e valores, e é possível remover as tags de um recurso a qualquer momento. É possível definir o valor de uma tag a uma string vazia, mas não pode configurar o valor de um tag como nula. Caso adicione uma tag com a mesma chave de outra existente no recurso, o novo valor substituirá o antigo. Se você excluir um recurso, todas as tags associadas ao recurso também serão excluídas.

Restrições e limitações de tags

As restrições básicas a seguir se aplicam a tags:

  • Número máximo de tags por recurso: 50.

  • Comprimento máximo da chave: 127 caracteres Unicode em UTF-8.

  • Comprimento do valor máximo: 255 caracteres Unicode em UTF-8.

  • As chaves e valores das tags diferenciam maiúsculas de minúsculas.

  • Não use o prefixo aws: no nome nem no valor das suas tags. Ele é reservado para uso da AWS. Você não pode editar nem excluir nomes ou valores de tag com esse prefixo. As tags com esse prefixo não contam para as tags por limite de recurso.

  • Se o seu esquema de tags é usado em vários serviços e recursos , lembre-se de que outros serviços talvez tenham restrições em caracteres permitidos. Os caracteres permitidos incluem letras, espaços e números representáveis em UTF-8, além dos seguintes caracteres especiais: + - = . _ : / @.

Utilização de tags com políticas do IAM

Para especificar os recursos do IAM que um usuário pode criar, modificar ou utilizar, é possível aplicar permissões em nível de recurso baseadas em tags às políticas do IAM que você utiliza para a maioria das ações de API do AWS IoT Wireless. Para controlar o acesso do usuário (permissões) com base nas tags de um recurso, utilize o elemento Condition (também chamado de bloco Condition) com as chaves de contexto e valores de condição a seguir em uma política do IAM.

  • Use aws:ResourceTag/tag-key: tag-value, para permitir ou negar ações do usuário em recursos com tags específicas.

  • Use aws:RequestTag/tag-key: tag-value para exigir que uma tag específica seja (ou não seja) usada ao fazer uma solicitação de API para criar ou modificar um recurso que permite tags.

  • Use aws:TagKeys: [tag-key, ...] para exigir que um conjunto específico de chaves de tag seja (ou não seja) usado ao fazer uma solicitação de API para criar ou modificar um recurso que permite tags.

nota

Os valores e as chaves de contexto de condição em uma política do IAM se aplicam somente às ações do AWS IoT em que um identificador de um recurso que pode ser marcado com tags é um parâmetro obrigatório. Por exemplo, o uso de DescribeEndpoint não é permitido ou é negado com base nas chaves de contexto e valores de condição, pois nenhum recurso que pode ser marcado é referido nessa solicitação.

Para obter mais informações sobre o uso de tags, consulte Controlar o acesso usando tags no Guia do usuário do AWS Identity and Access Management. A seção Referência de política JSON do IAM desse guia detalhou a sintaxe, as descrições e os exemplos dos elementos, variáveis e lógica de avaliação das políticas JSON no IAM.

A política de exemplo a seguir aplica duas restrições com base em tag. Um usuário do IAM restrito por essa política:

  • Não pode atribuir um recurso à tag “env=prod” (consulte a linha "aws:RequestTag/env" : "prod" no exemplo).

  • Não pode modificar ou acessar um recurso que tenha uma tag existentes “env=prod” (consulte a linha "aws:ResourceTag/env" : "prod" no exemplo).

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iot:CreateMulticastGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "prod" } } }, { "Effect": "Deny", "Action": [ "iot:CreateMulticastGroup", "iot:UpdateMulticastGroup", "iot:GetMulticastGroup", "iot:ListMulticastGroups" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "prod" } } }, { "Effect": "Allow", "Action": [ "iot:CreateMulticastGroup", "iot:UpdateMulticastGroup", "iot:GetMulticastGroup", "iot:ListMulticastGroups" ], "Resource": "*" } ] }

Você também pode especificar vários valores de tag para uma determinada chave de tag, colocando-as em uma lista como esta:

"StringEquals" : { "aws:ResourceTag/env" : ["dev", "test"] }
nota

Se você permitir ou negar aos usuários o acesso a recursos com base em tags, considere negar explicitamente aos usuários a capacidade de adicionar essas tags ou removê-las dos mesmos recursos. Caso contrário, é possível que um usuário contorne suas restrições e obtenha acesso a um recurso modificando as tags.