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.
Etiquetado de SNS temas en Amazon
Amazon SNS admite el etiquetado de SNS temas de Amazon. Esto puede ayudarlo a realizar un seguimiento y administrar los costos asociados a sus temas, proporcionar una seguridad mejorada en sus políticas de AWS Identity and Access Management (IAM) y permitirle buscar o filtrar fácilmente miles de temas. El etiquetado le permite gestionar sus SNS temas de Amazon mediante AWS Resource Groups. Para obtener más información sobre Resource Groups, consulte la Guía del usuario de AWS Resource Groups.
Temas
Etiquetado para asignación de costos
Para organizar e identificar tus SNS temas de Amazon para la asignación de costes, puedes añadir etiquetas que identifiquen el propósito de un tema. Esto es útil especialmente cuando dispone de muchos temas. Puedes usar etiquetas de asignación de costos para organizar tu AWS factura y reflejar tu propia estructura de costos. Para ello, regístrese para que la factura de su AWS cuenta incluya las claves y los valores de las etiquetas. Para obtener más información, consulte Configuración de un informe de asignación de costos mensual en la Guía del usuario de Administración y facturación y costos de AWS.
Por ejemplo, puedes añadir etiquetas que representen el centro de costes y el propósito de tus SNS temas de Amazon, de la siguiente manera:
Recurso | Clave | Valor |
---|---|---|
Tema 1 | Centro de costos | 43289 |
Aplicación | Procesamiento de pedidos | |
Tema 2 | Centro de costos | 43289 |
Aplicación | Procesamiento de pagos | |
Tema 3 | Centro de costos | 76585 |
Aplicación | Archivado |
Este plan de etiquetado le permite agrupar dos temas relacionados con el rendimiento de las máquinas de estado en el mismo centro de costos, mientras etiqueta una actividad no relacionada con una etiqueta de asignación de costos distinta.
Etiquetado para el control de acceso
AWS Identity and Access Management permite controlar el acceso a los recursos en función de las etiquetas. Después de etiquetar los recursos, proporcione información sobre las etiquetas de los recursos en el elemento de condición de una IAM política para administrar el acceso basado en etiquetas. Para obtener información sobre cómo etiquetar sus recursos mediante la SNSconsola de Amazon o la AWS SDK, consulte Configuración de etiquetas.
Puedes restringir el acceso a una IAM identidad. Por ejemplo, puedes restringir Publish
el PublishBatch
acceso a todos los SNS temas de Amazon que incluyan una etiqueta con la clave environment
y el valor y, al mismo tiempoproduction
, permitir el acceso a todos los demás SNS temas de Amazon. En el ejemplo siguiente, la política restringe la capacidad de publicar mensajes en temas etiquetados con production
, al tiempo que permite que los mensajes se publiquen en temas etiquetados con development
. Para obtener más información, consulta Cómo controlar el acceso mediante etiquetas en la Guía del IAM usuario.
nota
Si se establece el IAM permiso para, Publish
se establece el permiso para ambos Publish
PublishBatch
.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Deny", "Action": [ "sns:Publish" ], "Resource": "arn:aws:sns:*:*:*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "production" } } }, { "Effect": "Allow", "Action": [ "sns:Publish" ], "Resource": "arn:aws:sns:*:*:*", "Condition": { "StringEquals": { "aws:ResourceTag/environment": "development" } } }] }
Etiquetado para búsqueda y filtrado de recursos
Una AWS cuenta puede tener decenas de miles de SNS temas de Amazon (consulta Amazon SNS Quotas para obtener más información). Al etiquetar los temas, puede simplificar el proceso de búsqueda o filtrado de temas.
Por ejemplo, puede tener cientos de temas asociados a su entorno de producción. En lugar de tener que buscar manualmente estos temas, puede consultarlos todos con una etiqueta determinada:
import com.amazonaws.services.resourcegroups.AWSResourceGroups; import com.amazonaws.services.resourcegroups.AWSResourceGroupsClientBuilder; import com.amazonaws.services.resourcegroups.model.QueryType; import com.amazonaws.services.resourcegroups.model.ResourceQuery; import com.amazonaws.services.resourcegroups.model.SearchResourcesRequest; import com.amazonaws.services.resourcegroups.model.SearchResourcesResult; public class Example { public static void main(String[] args) { // Query Amazon SNS Topics with tag "keyA" as "valueA" final String QUERY = "{\"ResourceTypeFilters\":[\"AWS::SNS::Topic\"],\"TagFilters\":[{\"Key\":\"keyA\", \"Values\":[\"valueA\"]}]}"; // Initialize ResourceGroup client AWSResourceGroups awsResourceGroups = AWSResourceGroupsClientBuilder .standard() .build(); // Query all resources with certain tags from ResourceGroups SearchResourcesResult result = awsResourceGroups.searchResources( new SearchResourcesRequest().withResourceQuery( new ResourceQuery() .withType(QueryType.TAG_FILTERS_1_0) .withQuery(QUERY) )); System.out.println("SNS Topics with certain tags are " + result.getResourceIdentifiers()); } }