AWS::LakeFormation::TagAssociation - AWS CloudFormation
Services or capabilities described in AWS documentation might vary by Region. To see the differences applicable to the AWS European Sovereign Cloud Region, see the AWS European Sovereign Cloud User Guide.

This is the new CloudFormation Template Reference Guide. Please update your bookmarks and links. For help getting started with CloudFormation, see the AWS CloudFormation User Guide.

AWS::LakeFormation::TagAssociation

The AWS::LakeFormation::TagAssociation resource represents an assignment of an LF-tag to a Data Catalog resource (database, table, or column). During a stack operation, CloudFormation calls AWS Lake FormationAddLFTagsToResource API to create a TagAssociation resource and calls the RemoveLFTagsToResource API to delete it.

Syntax

To declare this entity in your CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::LakeFormation::TagAssociation", "Properties" : { "LFTags" : [ LFTagPair, ... ], "Resource" : Resource } }

YAML

Type: AWS::LakeFormation::TagAssociation Properties: LFTags: - LFTagPair Resource: Resource

Properties

LFTags

A structure containing an LF-tag key-value pair.

Required: Yes

Type: Array of LFTagPair

Update requires: Replacement

Resource

UTF-8 string (valid values: DATABASE | TABLE).

The resource for which the LF-tag policy applies.

Required: Yes

Type: Resource

Update requires: Replacement

Return values

Ref

When you pass the logical ID of this resource to the intrinsic Ref function, Ref returns a combination of the ResourceIdentifier and TagsIdentifier seperated with a pipe.

For example: {"Catalog":null,"Database":{"CatalogId":null,"Name":"ExampleDbName"},"Table":null,"TableWithColumns":null}|[{"CatalogId":null,"TagKey":"tagKey1","TagValues":null}]

For more information about using the Ref function, see Ref.

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

ResourceIdentifier

Json encoding of the input resource.

Examples
  • Database:{"Catalog":null,"Database":{"CatalogId":"123456789012","Name":"ExampleDbName"},"Table":null,"TableWithColumns":null}

  • Table: {"Catalog":null,"Database":null,"Table":{"CatalogId":"123456789012","DatabaseName":"ExampleDbName","Name":"ExampleTableName","TableWildcard":null},"TableWithColumns":null}

  • Columns: {"Catalog":null,"Database":null,"Table":null,"TableWithColumns":{"CatalogId":"123456789012","DatabaseName":"ExampleDbName","Name":"ExampleTableName","ColumnNames":["ExampleColName1","ExampleColName2"]}}

TagsIdentifier

Json encoding of the input LFTags list.

For example: [{"CatalogId":null,"TagKey":"tagKey1","TagValues":null},{"CatalogId":null,"TagKey":"tagKey2","TagValues":null}]

Remarks

Note that for a valid TagAssociation to be created, a database or table or column(s) must be specified.

Examples

Examples for creating an LF-tag for a database

The following example demonstrates how to create an LF-tag on a database.

JSON

{ "SampleTagOnDatabase": { "Type": "AWS::LakeFormation::TagAssociation", "Properties": { "Resource": { "Database": { "CatalogId": "12345678910", "Name": "sample_db" } }, "LFTags": [ { "CatalogId": "12345678910", "TagKey": "sample_tag_key", "TagValues": ["sample_tag_value1"] } ] } } }

YAML

SampleTagOnDatabase: Type: AWS::LakeFormation::TagAssociation Properties: Resource: Database: CatalogId: "12345678910" Name: "sample_db" LFTags: - CatalogId: "12345678910" TagKey: "sample_tag_key" TagValues: - "sample_tag_value1"

Examples for creating and LF-tag for a table

The following example demonstrates how to create an LF-tag on a table.

JSON

{ "SampleTagOnTable": { "Type": "AWS::LakeFormation::TagAssociation", "Properties": { "Resource": { "Table": { "CatalogId": "12345678910", "DatabaseName": "sample_db", "Name": "sample_tbl" } }, "LFTags": [ { "CatalogId": "12345678910", "TagKey": "sample_tag_key", "TagValues": ["sample_tag_value1"] } ] } } }

YAML

SampleTagOnTable: Type: AWS::LakeFormation::TagAssociation Properties: Resource: Table: CatalogId: "12345678910" DatabaseName: "sample_db" Name: "sample_tbl" LFTags: - CatalogId: "12345678910" TagKey: "sample_tag_key" TagValues: - "sample_tag_value1"

Examples for creating an LF-tag for columns

The following example demonstrates how to create LF-tags on columns.

JSON

{ "SampleTagOnColumn": { "Type": "AWS::LakeFormation::TagAssociation", "Properties": { "Resource": { "TableWithColumns": { "CatalogId": "12345678910", "DatabaseName": "sample_db", "Name": "sample_tbl", "ColumnNames": ["sample_col1", "sample_col2"] } }, "LFTags": [ { "CatalogId": "12345678910", "TagKey": "sample_tag_key", "TagValues": ["sample_tag_value1"] } ] } } }

YAML

TestTagAssociation: Type: AWS::LakeFormation::TagAssociation Properties: Resource: TableWithColumns: CatalogId: "12345678910" DatabaseName: "sample_db" Name: "sample_tbl" ColumnNames: - "sample_col1" - "sample_col2" LFTags: - CatalogId: "12345678910" TagKey: "sample_tag_key" TagValues: - "sample_tag_value1"

See also

Permission requirements for tag assignments.