

# Lambda 함수에서 태그 사용
<a name="configuration-tags"></a>

함수에 태그를 지정하여 리소스를 정리하고 관리할 수 있습니다. 태그는 AWS 서비스 전반에서 지원되는 리소스와 연결된 자유 형식의 키-값 페어입니다. 태그 사용 사례에 대한 자세한 내용은 *AWS 리소스에 태그 지정 및 Tag Editor 사용 설명서*의 [일반적인 태그 지정 전략](https://docs.aws.amazon.com//tag-editor/latest/userguide/best-practices-and-strats.html#tag-strategies)을 참조하세요.

태그는 버전이나 별칭이 아닌 함수 수준에서 적용됩니다. 태그는 버전을 게시할 때 AWS Lambda 스냅샷이 생성되는 버전별 구성에 포함되지 않습니다. Lambda API를 사용하여 태그를 보고 업데이트할 수 있습니다. Lambda 콘솔에서 특정 함수를 관리하면서 태그를 보고 업데이트할 수도 있습니다.

**Topics**
+ [태그 작업에 필요한 권한](#fxn-tags-required-permissions)
+ [Lambda 콘솔에서 태그 사용](#using-tags-with-the-console)
+ [AWS CLI에서 태그 사용](#configuration-tags-cli)

## 태그 작업에 필요한 권한
<a name="fxn-tags-required-permissions"></a>

AWS Identity and Access Management(IAM) ID(사용자, 그룹 또는 역할)가 리소스의 태그를 읽거나 설정할 수 있도록 허용하려면 해당 권한을 부여합니다.
+ **lambda:ListTags** - 리소스에 태그가 있는 경우 리소스에서 `ListTags`를 직접적으로 호출해야 하는 모든 사람에게 이 권한을 부여합니다. 태그가 지정된 함수의 경우 `GetFunction`에도 이 권한이 필요합니다.
+ **lambda:TagResource** - `TagResource`를 직접적으로 호출하거나 생성 시 태그를 수행해야 하는 모든 사람에게 이 권한을 부여합니다.

선택적으로 리소스에 대한 `UntagResource` 직접 호출을 허용하도록 **lambda:UntagResource** 권한 부여를 고려하세요.

자세한 내용은 [Lambda에 대한 자격 증명 기반 IAM 정책](access-control-identity-based.md) 섹션을 참조하세요.

## Lambda 콘솔에서 태그 사용
<a name="using-tags-with-the-console"></a>

Lambda 콘솔을 사용하여 태그가 있는 함수를 생성하고 기존 함수에 태그를 추가하고 추가한 태그를 기준으로 함수를 필터링할 수 있습니다.

**함수를 생성할 때 태그를 추가하려면**

1. Lambda 콘솔의 [함수 페이지](https://console.aws.amazon.com/lambda/home#/functions)를 엽니다.

1. **함수 생성**을 선택합니다.

1. **새로 작성(Author from scratch)** 또는 **컨테이너 이미지(Container image)**를 선택합니다.

1. **기본 정보**에서 함수를 설정합니다. 함수 구성에 대한 자세한 내용은 [AWS Lambda 함수 구성](lambda-functions.md) 섹션을 참조하세요.

1. **고급 설정(Advanced settings)**을 확장한 다음 **태그 활성화(Enable tags)**를 선택합니다.

1. 이렇게 하려면 **태그 추가(Add new tag)**를 선택한 다음 **키(Key)** 및 선택 사항인 **값(Value)**을 입력합니다. 태그를 더 추가하려면 이 단계를 반복합니다.

1. **함수 생성**을 선택합니다.

**기존 함수에 태그를 추가하려면**

1. Lambda 콘솔의 [함수 페이지](https://console.aws.amazon.com/lambda/home#/functions)를 엽니다.

1. 함수의 이름을 선택합니다.

1. **구성(Configuration)**을 선택한 다음 **태그(Tags)**를 선택합니다.

1. **태그**에서 **태그 관리**를 선택합니다.

1. 이렇게 하려면 **태그 추가(Add new tag)**를 선택한 다음 **키(Key)** 및 선택 사항인 **값(Value)**을 입력합니다. 태그를 더 추가하려면 이 단계를 반복합니다.

1. **저장**을 선택합니다.

**태그를 사용하여 함수를 필터링하려면**

1. Lambda 콘솔의 [함수 페이지](https://console.aws.amazon.com/lambda/home#/functions)를 엽니다.

1. 검색 상자를 선택하여 함수 속성과 태그 키 목록을 표시합니다.

1. 태그 키를 선택하여 현재 AWS 리전에서 사용 중인 값 목록을 표시합니다.

1. **용도: “tag-name”**을 선택하여 이 키로 태그가 지정된 모든 함수를 보거나 **연산자**를 선택하여 값으로 추가 필터링할 수 있습니다.

1. 태그 키와 값의 조합으로 필터링하려면 태그 값을 선택합니다.

검색 창은 태그 키 검색도 지원합니다. `tag`을(를) 입력하여 태그 키 목록만 표시하거나 키 이름을 입력하여 목록에서 찾습니다.

## AWS CLI에서 태그 사용
<a name="configuration-tags-cli"></a>

함수를 포함하여 기존 Lambda 리소스에 Lambda API로 태그를 추가하고 제거할 수 있습니다. 또한 함수를 생성할 때 태그를 추가하여 리소스의 전체 수명 주기 동안 태그를 유지할 수 있습니다.

### Lambda 태그 API를 사용하여 태그 업데이트
<a name="tags-fxn-api-config"></a>

[TagResource](https://docs.aws.amazon.com/lambda/latest/api/API_TagResource.html) 및 [UntagResource](https://docs.aws.amazon.com/lambda/latest/api/API_UntagResource.html) API 작업을 통해 지원되는 Lambda 리소스에 대한 태그를 추가하고 제거할 수 있습니다.

AWS CLI를 사용하여 이러한 작업을 직접적으로 호출할 수 있습니다. 기존 리소스에 태그를 추가하려면 `tag-resource` 명령을 사용합니다. 이 예에서는 두 개의 태그를 추가합니다. 하나는 *Department*라는 키를 갖는 태그이고 다른 하나는 *CostCenter*라는 키를 갖는 태그입니다.

```
aws lambda tag-resource \
--resource arn:aws:lambda:us-east-2:123456789012:resource-type:my-resource \
--tags Department=Marketing,CostCenter=1234ABCD
```

태그를 제거하려면 `untag-resource` 명령을 사용합니다. 이 예에서는 *Department*라는 키가 있는 태그를 제거합니다.

```
aws lambda untag-resource --resource arn:aws:lambda:us-east-1:123456789012:resource-type:resource-identifier \
--tag-keys Department
```

### 함수를 생성할 때 태그 추가
<a name="creating-tags-when-you-create-a-function-cli"></a>

태그를 사용하여 새로운 Lambda 함수를 생성하려면 [CreateFunction](https://docs.aws.amazon.com//lambda/latest/api/API_CreateFunction.html) API 작업을 사용합니다. `Tags` 파라미터를 지정합니다. `create-function` CLI 명령과 --tags 옵션을 사용하여 이 작업을 직접적으로 호출할 수 있습니다. `CreateFunction`과 함께 태그 파라미터를 사용하기 전에 역할에 이 작업에 필요한 일반적인 권한과 함께 리소스에 태그를 지정할 수 있는 권한이 있는지 확인하세요. 태그 지정 권한에 대한 자세한 내용은 [태그 작업에 필요한 권한](#fxn-tags-required-permissions) 섹션을 참조하세요. 이 예에서는 두 개의 태그를 추가합니다. 하나는 *Department*라는 키를 갖는 태그이고 다른 하나는 *CostCenter*라는 키를 갖는 태그입니다.

```
aws lambda create-function --function-name my-function
--handler index.js --runtime nodejs24.x \
--role arn:aws:iam::123456789012:role/lambda-role \
--tags Department=Marketing,CostCenter=1234ABCD
```

### 함수의 태그 보기
<a name="viewing-tags-on-a-function-cli"></a>

특정 Lambda 리소스에 적용된 태그를 보려면 `ListTags` API 작업을 사용합니다. 자세한 내용은 [ListTags](https://docs.aws.amazon.com/lambda/latest/api/API_ListTags.html)를 참조하세요.

Amazon 리소스 이름(ARN)을 제공하여 `list-tags` AWS CLI 명령으로 이 작업을 직접적으로 호출할 수 있습니다.

```
aws lambda list-tags --resource arn:aws:lambda:us-east-1:123456789012:resource-type:resource-identifier
```

[GetFunction](https://docs.aws.amazon.com/lambda/latest/api/API_GetFunction.html) API 작업을 통해 특정 리소스에 적용된 태그를 볼 수 있습니다. 다른 리소스 유형에는 이와 유사한 기능을 사용할 수 없습니다.

`get-function` CLI 명령으로 이 작업을 직접적으로 호출합니다.

```
aws lambda get-function --function-name my-function
```

### 태그로 리소스 필터링
<a name="tags-fxn-filtering"></a>

AWS Resource Groups Tagging API [GetResources](https://docs.aws.amazon.com/resourcegroupstagging/latest/APIReference/API_GetResources.html) API 작업을 사용하여 태그를 기준으로 리소스를 필터링할 수 있습니다. `GetResources` 작업은 최대 10개의 필터를 수신하며 각 필터는 태그 키와 최대 10개의 태그 값을 포함합니다. `GetResources`에 `ResourceType`을 지정하면 특정 리소스 유형별로 필터링할 수 있습니다.

`get-resources` AWS CLI 명령을 사용하여 이 작업을 직접적으로 호출할 수 있습니다. `get-resources` 사용 예는 *AWS CLI Command Reference*의 [get-resources](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/resourcegroupstaggingapi/get-resources.html#examples)를 참조하세요.