AWS IoT Greengrass 리소스에 태그 지정 - AWS IoT Greengrass

AWS IoT Greengrass Version 1 2023년 6월 30일에 수명 연장 단계에 들어갔습니다. AWS IoT Greengrass V1 관리형 정책에 대한 자세한 정보는 섹션을 참조하세요. 이 날짜 이후에는 기능, 개선 사항, 버그 수정 또는 보안 패치를 제공하는 업데이트가 AWS IoT Greengrass V1 릴리스되지 않습니다. 에서 실행되는 기기는 AWS IoT Greengrass V1 중단되지 않으며 계속 작동하고 클라우드에 연결됩니다. 새로운 기능이 크게 추가되고 추가 플랫폼에 대한 지원이 추가되는 으로 마이그레이션하는 AWS IoT Greengrass Version 2 것이 좋습니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS IoT Greengrass 리소스에 태그 지정

태그는 AWS IoT Greengrass 그룹을 구성하고 관리하는 데 도움이 될 수 있습니다. 태그를 사용하여 그룹, 대량 배포, 그리고 그룹에 추가되는 코어, 디바이스 및 기타 리소스에 메타데이터를 할당할 수 있습니다. 또한 IAM 정책에서 태그를 사용하여 Greengrass 리소스에 대한 조건부 액세스를 정의할 수 있습니다.

참고

현재 AWS IoT 결제 그룹 또는 비용 할당 보고서에서는 Greengrass 리소스 태그가 지원되지 않습니다.

태그 기본 사항

태그를 사용하면 용도, 소유자 또는 환경 등을 기준으로 하는 AWS IoT Greengrass 리소스를 분류할 수 있습니다. 동일한 유형의 리소스가 많을 때 리소스에 연결한 태그를 기반으로 리소스를 빠르게 식별할 수 있습니다. 태그는 사용자가 정의하는 키와 선택적 값으로 구성됩니다. 각 리소스 유형에 대한 태그 키 세트를 설계하는 것이 좋습니다. 일관된 태그 키 세트를 사용하면 리소스를 보다 쉽게 관리할 수 있습니다. 예를 들어, 그룹에 대한 태그 세트를 정의하여 코어 디바이스의 공장 위치를 추적할 수 있습니다. 자세한 내용은 AWS 태그 지정 전략을 참조하세요.

AWS IoT 콘솔에서 태그 지정 지원

AWS IoT 콘솔에서 Greengrass Group 리소스에 대한 태그를 생성하고, 보고, 관리할 수 있습니다. 태그를 생성하기 전에 태그 지정에 대한 제한 사항을 유의하십시오. 자세한 내용은 Amazon Web Services 일반 참조태그 이름 지정 및 사용 규칙을 참조하세요.

그룹을 생성할 때 태그를 할당하려면

그룹을 생성할 때 그룹에 태그를 할당할 수 있습니다. 태그 섹션에서 새 태그 추가를 선택하여 태깅 입력 필드를 표시합니다.

그룹 구성 페이지에서 태그를 보고 관리하려면

설정 보기를 선택해 그룹 구성 페이지에서 태그를 보고 관리할 수 있습니다. 그룹의 태그 섹션에서 그룹 태그 추가, 편집 또는 제거를 위해 태그 관리를 선택합니다.

AWS IoT Greengrass API에서 태그 지정 지원

AWS IoT Greengrass API를 사용하여 태그 지정을 지원하는 AWS IoT Greengrass 리소스에 대한 태그를 생성하고, 나열하고, 관리할 수 있습니다. 태그를 생성하기 전에 태그 지정에 대한 제한 사항을 유의하십시오. 자세한 내용은 Amazon Web Services 일반 참조태그 이름 지정 및 사용 규칙을 참조하세요.

  • 리소스 생성 중에 태그를 추가하려면 리소스의 tags 속성에서 태그를 정의합니다.

  • 리소스가 생성된 후 태그를 추가하거나 태그 값을 업데이트하려면 TagResource 작업을 사용합니다.

  • 리소스에서 태그를 제거하려면 UntagResource 작업을 사용합니다.

  • 리소스와 연결된 태그를 검색하려면 ListTagsForResource 작업을 사용하거나 리소스를 가져와서 해당 tags 속성을 검사합니다.

다음 표에는 AWS IoT Greengrass API에서 태그를 지정할 수 있는 리소스와 해당 CreateGet 작업이 나열됩니다.

다음 작업을 사용하여 태그 지정을 지원하는 리소스에 대한 태그를 나열하고 관리합니다.

  • TagResource. 태그를 리소스에 추가합니다. 또한 태그의 키-값 페어의 값을 변경하는 데 사용됩니다.

  • ListTagsForResource. 리소스에 대한 태그를 나열합니다.

  • UntagResource. 리소스에서 태그를 제거합니다.

언제든지 리소스에서 태그를 추가하거나 제거할 수 있습니다. 태그 키의 값을 변경하려면 동일한 키와 새로운 값을 정의하는 리소스에 태그를 추가합니다. 새 값은 기존 값을 덮어씁니다. 값을 빈 문자열로 설정할 수 있지만,값을 Null로 설정할 수는 없습니다.

리소스를 삭제하면 리소스와 연결된 태그도 삭제됩니다.

참고

AWS IoT 사물에 할당할 수 있는 속성과 리소스 태그를 혼동하지 마십시오. Greengrass 코어는 AWS IoT 사물이지만 이 주제에서 설명하는 리소스 태그는 코어 사물에 연결되지 않고 CoreDefinition에 연결됩니다.

IAM 정책에 태그 사용

IAM 정책에서는 리소스 태그를 사용하여 사용자 액세스 및 권한을 제어할 수 있습니다. 예를 들어, 정책은 사용자가 특정 태그가 있는 리소스만 생성하도록 허용할 수 있습니다. 또한 정책은 사용자가 특정 태그가 있는 리소스를 생성하거나 수정하는 것을 제한할 수 있습니다. 생성 중에 리소스에 태그를 지정하면(생성 시 태그 지정이라고 함) 나중에 사용자 지정 태그 지정 스크립트를 실행할 필요가 없습니다. 태그를 사용하여 새 환경을 시작하면 해당 IAM 권한이 자동으로 적용됩니다.

다음 조건 텍스트 키 및 값은 정책의 Condition 요소에서 사용할 수 있습니다(Condition 블록이라고 함).

greengrass:ResourceTag/tag-key: tag-value

특정 태그가 있는 리소스에 대한 사용자 작업을 허용하거나 거부합니다.

aws:RequestTag/tag-key: tag-value

태그 지정 가능한 리소스에서 태그를 생성하거나 수정하는 API 요청을 수행할 때 특정 태그를 사용하도록(또는 사용하지 않도록) 요구합니다.

aws:TagKeys: [tag-key, ...]

태그 지정 가능한 리소스에서 태그를 생성하거나 수정하는 API 요청을 수행할 때 특정 태그 세트를 사용하도록(또는 사용하지 않도록) 요구합니다.

조건 컨텍스트 키 및 값은 태그 지정 가능한 리소스에 대한 작업을 수행하는 AWS IoT Greengrass 작업에만 사용할 수 있습니다. 이러한 작업은 리소스를 필수 파라미터로 간주합니다. 예를 들어, GetGroupVersion에서는 조건부 액세스를 설정할 수 있습니다. AssociateServiceRoleToAccount에서는 요청에서 태그 지정 가능한 리소스(예: 그룹, 코어 정의 또는 디바이스 정의)가 참조되지 않기 때문에 조건부 액세스를 설정할 수 없습니다.

자세한 내용은 IAM 사용 설명서에서 태그를 이용한 액세스 제어IAM JSON 정책 참조를 참조하세요. JSON 정책 참조에는 IAM에 있는 JSON 정책의 요소, 변수 및 평가 로직에 대한 자세한 구문, 설명 및 예제가 포함되어 있습니다.

예제 IAM 정책

다음 예제 정책은 베타 사용자를 베타 리소스 작업으로만 제한하는 태그 기반 권한을 적용합니다.

  • 첫 번째 문은 IAM 사용자가 env=beta 태그가 있는 리소스에 대해서만 작업하도록 허용합니다.

  • 두 번째 문은 IAM 사용자가 env=beta 태그를 리소스에서 제거하는 것을 방지합니다. 이 문을 사용하여 사용자가 자신의 액세스를 제거하지 않도록 보호할 수 있습니다.

    참고

    태그를 사용하여 리소스에 대한 액세스를 제어하는 경우 사용자가 동일한 리소스에서 태그를 추가하거나 제거하도록 허용하는 권한도 관리해야 합니다. 그렇지 않으면 경우에 따라 사용자가 태그를 수정하여 제한을 우회하고 리소스에 대한 액세스 권한을 얻을 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "greengrass:*", "Resource": "*", "Condition": { "StringEquals": { "greengrass:ResourceTag/env": "beta" } } }, { "Effect": "Deny", "Action": "greengrass:UntagResource", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "beta" } } } ] }

사용자가 생성 시 태그를 지정하도록 허용하려면 사용자에게 적절한 권한을 부여해야 합니다. 다음 예제 정책에는 greengrass:TagResourcegreengrass:CreateGroup 작업에 대한 "aws:RequestTag/env": "beta" 조건이 포함되어 있습니다. 이 조건을 통해 사용자는 그룹에 env=beta로 태그를 지정하는 경우에만 그룹을 만들 수 있습니다. 이 방법으로 사용자가 새 그룹에 태그를 지정하도록 효과적으로 강제할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "greengrass:TagResource", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "beta" } } }, { "Effect": "Allow", "Action": "greengrass:CreateGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "beta" } } } ] }

다음 코드 조각은 태그를 목록 안에 넣어 한 태그 키에 대해 여러 태그 값을 지정할 수 있는 방법을 보여 줍니다.

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

다음 사항도 참조하십시오.