lakeformation

package
v5.43.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DataLakeSettings

type DataLakeSettings struct {
	pulumi.CustomResourceState

	// Set of ARNs of AWS Lake Formation principals (IAM users or roles).
	Admins pulumi.StringArrayOutput `pulumi:"admins"`
	// Whether to allow Amazon EMR clusters to access data managed by Lake Formation.
	AllowExternalDataFiltering pulumi.BoolPtrOutput `pulumi:"allowExternalDataFiltering"`
	// Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it.
	//
	// > **NOTE:** Although optional, not including `admins`, `createDatabaseDefaultPermissions`, `createTableDefaultPermissions`, and/or `trustedResourceOwners` results in the setting being cleared.
	AuthorizedSessionTagValueLists pulumi.StringArrayOutput `pulumi:"authorizedSessionTagValueLists"`
	// Identifier for the Data Catalog. By default, the account ID.
	CatalogId pulumi.StringPtrOutput `pulumi:"catalogId"`
	// Up to three configuration blocks of principal permissions for default create database permissions. Detailed below.
	CreateDatabaseDefaultPermissions DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput `pulumi:"createDatabaseDefaultPermissions"`
	// Up to three configuration blocks of principal permissions for default create table permissions. Detailed below.
	CreateTableDefaultPermissions DataLakeSettingsCreateTableDefaultPermissionArrayOutput `pulumi:"createTableDefaultPermissions"`
	// A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.
	ExternalDataFilteringAllowLists pulumi.StringArrayOutput `pulumi:"externalDataFilteringAllowLists"`
	// List of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs).
	TrustedResourceOwners pulumi.StringArrayOutput `pulumi:"trustedResourceOwners"`
}

Manages Lake Formation principals designated as data lake administrators and lists of principal permission entries for default create database and default create table permissions.

> **NOTE:** Lake Formation introduces fine-grained access control for data in your data lake. Part of the changes include the `IAMAllowedPrincipals` principal in order to make Lake Formation backwards compatible with existing IAM and Glue permissions. For more information, see [Changing the Default Security Settings for Your Data Lake](https://docs.aws.amazon.com/lake-formation/latest/dg/change-settings.html) and [Upgrading AWS Glue Data Permissions to the AWS Lake Formation Model](https://docs.aws.amazon.com/lake-formation/latest/dg/upgrade-glue-lake-formation.html).

## Example Usage ### Data Lake Admins

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.NewDataLakeSettings(ctx, "example", &lakeformation.DataLakeSettingsArgs{
			Admins: pulumi.StringArray{
				aws_iam_user.Test.Arn,
				aws_iam_role.Test.Arn,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create Default Permissions

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.NewDataLakeSettings(ctx, "example", &lakeformation.DataLakeSettingsArgs{
			Admins: pulumi.StringArray{
				aws_iam_user.Test.Arn,
				aws_iam_role.Test.Arn,
			},
			CreateDatabaseDefaultPermissions: lakeformation.DataLakeSettingsCreateDatabaseDefaultPermissionArray{
				&lakeformation.DataLakeSettingsCreateDatabaseDefaultPermissionArgs{
					Permissions: pulumi.StringArray{
						pulumi.String("SELECT"),
						pulumi.String("ALTER"),
						pulumi.String("DROP"),
					},
					Principal: pulumi.Any(aws_iam_user.Test.Arn),
				},
			},
			CreateTableDefaultPermissions: lakeformation.DataLakeSettingsCreateTableDefaultPermissionArray{
				&lakeformation.DataLakeSettingsCreateTableDefaultPermissionArgs{
					Permissions: pulumi.StringArray{
						pulumi.String("ALL"),
					},
					Principal: pulumi.Any(aws_iam_role.Test.Arn),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Enable EMR access to LakeFormation resources

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.NewDataLakeSettings(ctx, "example", &lakeformation.DataLakeSettingsArgs{
			Admins: pulumi.StringArray{
				aws_iam_user.Test.Arn,
				aws_iam_role.Test.Arn,
			},
			CreateDatabaseDefaultPermissions: lakeformation.DataLakeSettingsCreateDatabaseDefaultPermissionArray{
				&lakeformation.DataLakeSettingsCreateDatabaseDefaultPermissionArgs{
					Permissions: pulumi.StringArray{
						pulumi.String("SELECT"),
						pulumi.String("ALTER"),
						pulumi.String("DROP"),
					},
					Principal: pulumi.Any(aws_iam_user.Test.Arn),
				},
			},
			CreateTableDefaultPermissions: lakeformation.DataLakeSettingsCreateTableDefaultPermissionArray{
				&lakeformation.DataLakeSettingsCreateTableDefaultPermissionArgs{
					Permissions: pulumi.StringArray{
						pulumi.String("ALL"),
					},
					Principal: pulumi.Any(aws_iam_role.Test.Arn),
				},
			},
			AllowExternalDataFiltering: pulumi.Bool(true),
			ExternalDataFilteringAllowLists: pulumi.StringArray{
				data.Aws_caller_identity.Current.Account_id,
				data.Aws_caller_identity.Third_party.Account_id,
			},
			AuthorizedSessionTagValueLists: pulumi.StringArray{
				pulumi.String("Amazon EMR"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetDataLakeSettings

func GetDataLakeSettings(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DataLakeSettingsState, opts ...pulumi.ResourceOption) (*DataLakeSettings, error)

GetDataLakeSettings gets an existing DataLakeSettings resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDataLakeSettings

func NewDataLakeSettings(ctx *pulumi.Context,
	name string, args *DataLakeSettingsArgs, opts ...pulumi.ResourceOption) (*DataLakeSettings, error)

NewDataLakeSettings registers a new resource with the given unique name, arguments, and options.

func (*DataLakeSettings) ElementType

func (*DataLakeSettings) ElementType() reflect.Type

func (*DataLakeSettings) ToDataLakeSettingsOutput

func (i *DataLakeSettings) ToDataLakeSettingsOutput() DataLakeSettingsOutput

func (*DataLakeSettings) ToDataLakeSettingsOutputWithContext

func (i *DataLakeSettings) ToDataLakeSettingsOutputWithContext(ctx context.Context) DataLakeSettingsOutput

type DataLakeSettingsArgs

type DataLakeSettingsArgs struct {
	// Set of ARNs of AWS Lake Formation principals (IAM users or roles).
	Admins pulumi.StringArrayInput
	// Whether to allow Amazon EMR clusters to access data managed by Lake Formation.
	AllowExternalDataFiltering pulumi.BoolPtrInput
	// Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it.
	//
	// > **NOTE:** Although optional, not including `admins`, `createDatabaseDefaultPermissions`, `createTableDefaultPermissions`, and/or `trustedResourceOwners` results in the setting being cleared.
	AuthorizedSessionTagValueLists pulumi.StringArrayInput
	// Identifier for the Data Catalog. By default, the account ID.
	CatalogId pulumi.StringPtrInput
	// Up to three configuration blocks of principal permissions for default create database permissions. Detailed below.
	CreateDatabaseDefaultPermissions DataLakeSettingsCreateDatabaseDefaultPermissionArrayInput
	// Up to three configuration blocks of principal permissions for default create table permissions. Detailed below.
	CreateTableDefaultPermissions DataLakeSettingsCreateTableDefaultPermissionArrayInput
	// A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.
	ExternalDataFilteringAllowLists pulumi.StringArrayInput
	// List of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs).
	TrustedResourceOwners pulumi.StringArrayInput
}

The set of arguments for constructing a DataLakeSettings resource.

func (DataLakeSettingsArgs) ElementType

func (DataLakeSettingsArgs) ElementType() reflect.Type

type DataLakeSettingsArray

type DataLakeSettingsArray []DataLakeSettingsInput

func (DataLakeSettingsArray) ElementType

func (DataLakeSettingsArray) ElementType() reflect.Type

func (DataLakeSettingsArray) ToDataLakeSettingsArrayOutput

func (i DataLakeSettingsArray) ToDataLakeSettingsArrayOutput() DataLakeSettingsArrayOutput

func (DataLakeSettingsArray) ToDataLakeSettingsArrayOutputWithContext

func (i DataLakeSettingsArray) ToDataLakeSettingsArrayOutputWithContext(ctx context.Context) DataLakeSettingsArrayOutput

type DataLakeSettingsArrayInput

type DataLakeSettingsArrayInput interface {
	pulumi.Input

	ToDataLakeSettingsArrayOutput() DataLakeSettingsArrayOutput
	ToDataLakeSettingsArrayOutputWithContext(context.Context) DataLakeSettingsArrayOutput
}

DataLakeSettingsArrayInput is an input type that accepts DataLakeSettingsArray and DataLakeSettingsArrayOutput values. You can construct a concrete instance of `DataLakeSettingsArrayInput` via:

DataLakeSettingsArray{ DataLakeSettingsArgs{...} }

type DataLakeSettingsArrayOutput

type DataLakeSettingsArrayOutput struct{ *pulumi.OutputState }

func (DataLakeSettingsArrayOutput) ElementType

func (DataLakeSettingsArrayOutput) Index

func (DataLakeSettingsArrayOutput) ToDataLakeSettingsArrayOutput

func (o DataLakeSettingsArrayOutput) ToDataLakeSettingsArrayOutput() DataLakeSettingsArrayOutput

func (DataLakeSettingsArrayOutput) ToDataLakeSettingsArrayOutputWithContext

func (o DataLakeSettingsArrayOutput) ToDataLakeSettingsArrayOutputWithContext(ctx context.Context) DataLakeSettingsArrayOutput

type DataLakeSettingsCreateDatabaseDefaultPermission

type DataLakeSettingsCreateDatabaseDefaultPermission struct {
	// List of permissions that are granted to the principal. Valid values may include `ALL`, `SELECT`, `ALTER`, `DROP`, `DELETE`, `INSERT`, `DESCRIBE`, and `CREATE_TABLE`. For more details, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	Permissions []string `pulumi:"permissions"`
	// Principal who is granted permissions. To enforce metadata and underlying data access control only by IAM on new databases and tables set `principal` to `IAM_ALLOWED_PRINCIPALS` and `permissions` to `["ALL"]`.
	Principal *string `pulumi:"principal"`
}

type DataLakeSettingsCreateDatabaseDefaultPermissionArgs

type DataLakeSettingsCreateDatabaseDefaultPermissionArgs struct {
	// List of permissions that are granted to the principal. Valid values may include `ALL`, `SELECT`, `ALTER`, `DROP`, `DELETE`, `INSERT`, `DESCRIBE`, and `CREATE_TABLE`. For more details, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	Permissions pulumi.StringArrayInput `pulumi:"permissions"`
	// Principal who is granted permissions. To enforce metadata and underlying data access control only by IAM on new databases and tables set `principal` to `IAM_ALLOWED_PRINCIPALS` and `permissions` to `["ALL"]`.
	Principal pulumi.StringPtrInput `pulumi:"principal"`
}

func (DataLakeSettingsCreateDatabaseDefaultPermissionArgs) ElementType

func (DataLakeSettingsCreateDatabaseDefaultPermissionArgs) ToDataLakeSettingsCreateDatabaseDefaultPermissionOutput

func (i DataLakeSettingsCreateDatabaseDefaultPermissionArgs) ToDataLakeSettingsCreateDatabaseDefaultPermissionOutput() DataLakeSettingsCreateDatabaseDefaultPermissionOutput

func (DataLakeSettingsCreateDatabaseDefaultPermissionArgs) ToDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext

func (i DataLakeSettingsCreateDatabaseDefaultPermissionArgs) ToDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext(ctx context.Context) DataLakeSettingsCreateDatabaseDefaultPermissionOutput

type DataLakeSettingsCreateDatabaseDefaultPermissionArray

type DataLakeSettingsCreateDatabaseDefaultPermissionArray []DataLakeSettingsCreateDatabaseDefaultPermissionInput

func (DataLakeSettingsCreateDatabaseDefaultPermissionArray) ElementType

func (DataLakeSettingsCreateDatabaseDefaultPermissionArray) ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

func (i DataLakeSettingsCreateDatabaseDefaultPermissionArray) ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput() DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

func (DataLakeSettingsCreateDatabaseDefaultPermissionArray) ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext

func (i DataLakeSettingsCreateDatabaseDefaultPermissionArray) ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext(ctx context.Context) DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

type DataLakeSettingsCreateDatabaseDefaultPermissionArrayInput

type DataLakeSettingsCreateDatabaseDefaultPermissionArrayInput interface {
	pulumi.Input

	ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput() DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput
	ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext(context.Context) DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput
}

DataLakeSettingsCreateDatabaseDefaultPermissionArrayInput is an input type that accepts DataLakeSettingsCreateDatabaseDefaultPermissionArray and DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput values. You can construct a concrete instance of `DataLakeSettingsCreateDatabaseDefaultPermissionArrayInput` via:

DataLakeSettingsCreateDatabaseDefaultPermissionArray{ DataLakeSettingsCreateDatabaseDefaultPermissionArgs{...} }

type DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

type DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput struct{ *pulumi.OutputState }

func (DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) ElementType

func (DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) Index

func (DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

func (DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext

func (o DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) ToDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext(ctx context.Context) DataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

type DataLakeSettingsCreateDatabaseDefaultPermissionInput

type DataLakeSettingsCreateDatabaseDefaultPermissionInput interface {
	pulumi.Input

	ToDataLakeSettingsCreateDatabaseDefaultPermissionOutput() DataLakeSettingsCreateDatabaseDefaultPermissionOutput
	ToDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext(context.Context) DataLakeSettingsCreateDatabaseDefaultPermissionOutput
}

DataLakeSettingsCreateDatabaseDefaultPermissionInput is an input type that accepts DataLakeSettingsCreateDatabaseDefaultPermissionArgs and DataLakeSettingsCreateDatabaseDefaultPermissionOutput values. You can construct a concrete instance of `DataLakeSettingsCreateDatabaseDefaultPermissionInput` via:

DataLakeSettingsCreateDatabaseDefaultPermissionArgs{...}

type DataLakeSettingsCreateDatabaseDefaultPermissionOutput

type DataLakeSettingsCreateDatabaseDefaultPermissionOutput struct{ *pulumi.OutputState }

func (DataLakeSettingsCreateDatabaseDefaultPermissionOutput) ElementType

func (DataLakeSettingsCreateDatabaseDefaultPermissionOutput) Permissions

List of permissions that are granted to the principal. Valid values may include `ALL`, `SELECT`, `ALTER`, `DROP`, `DELETE`, `INSERT`, `DESCRIBE`, and `CREATE_TABLE`. For more details, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).

func (DataLakeSettingsCreateDatabaseDefaultPermissionOutput) Principal

Principal who is granted permissions. To enforce metadata and underlying data access control only by IAM on new databases and tables set `principal` to `IAM_ALLOWED_PRINCIPALS` and `permissions` to `["ALL"]`.

func (DataLakeSettingsCreateDatabaseDefaultPermissionOutput) ToDataLakeSettingsCreateDatabaseDefaultPermissionOutput

func (DataLakeSettingsCreateDatabaseDefaultPermissionOutput) ToDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext

func (o DataLakeSettingsCreateDatabaseDefaultPermissionOutput) ToDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext(ctx context.Context) DataLakeSettingsCreateDatabaseDefaultPermissionOutput

type DataLakeSettingsCreateTableDefaultPermission

type DataLakeSettingsCreateTableDefaultPermission struct {
	// List of permissions that are granted to the principal. Valid values may include `ALL`, `SELECT`, `ALTER`, `DROP`, `DELETE`, `INSERT`, and `DESCRIBE`. For more details, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	Permissions []string `pulumi:"permissions"`
	// Principal who is granted permissions. To enforce metadata and underlying data access control only by IAM on new databases and tables set `principal` to `IAM_ALLOWED_PRINCIPALS` and `permissions` to `["ALL"]`.
	Principal *string `pulumi:"principal"`
}

type DataLakeSettingsCreateTableDefaultPermissionArgs

type DataLakeSettingsCreateTableDefaultPermissionArgs struct {
	// List of permissions that are granted to the principal. Valid values may include `ALL`, `SELECT`, `ALTER`, `DROP`, `DELETE`, `INSERT`, and `DESCRIBE`. For more details, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	Permissions pulumi.StringArrayInput `pulumi:"permissions"`
	// Principal who is granted permissions. To enforce metadata and underlying data access control only by IAM on new databases and tables set `principal` to `IAM_ALLOWED_PRINCIPALS` and `permissions` to `["ALL"]`.
	Principal pulumi.StringPtrInput `pulumi:"principal"`
}

func (DataLakeSettingsCreateTableDefaultPermissionArgs) ElementType

func (DataLakeSettingsCreateTableDefaultPermissionArgs) ToDataLakeSettingsCreateTableDefaultPermissionOutput

func (i DataLakeSettingsCreateTableDefaultPermissionArgs) ToDataLakeSettingsCreateTableDefaultPermissionOutput() DataLakeSettingsCreateTableDefaultPermissionOutput

func (DataLakeSettingsCreateTableDefaultPermissionArgs) ToDataLakeSettingsCreateTableDefaultPermissionOutputWithContext

func (i DataLakeSettingsCreateTableDefaultPermissionArgs) ToDataLakeSettingsCreateTableDefaultPermissionOutputWithContext(ctx context.Context) DataLakeSettingsCreateTableDefaultPermissionOutput

type DataLakeSettingsCreateTableDefaultPermissionArray

type DataLakeSettingsCreateTableDefaultPermissionArray []DataLakeSettingsCreateTableDefaultPermissionInput

func (DataLakeSettingsCreateTableDefaultPermissionArray) ElementType

func (DataLakeSettingsCreateTableDefaultPermissionArray) ToDataLakeSettingsCreateTableDefaultPermissionArrayOutput

func (i DataLakeSettingsCreateTableDefaultPermissionArray) ToDataLakeSettingsCreateTableDefaultPermissionArrayOutput() DataLakeSettingsCreateTableDefaultPermissionArrayOutput

func (DataLakeSettingsCreateTableDefaultPermissionArray) ToDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext

func (i DataLakeSettingsCreateTableDefaultPermissionArray) ToDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext(ctx context.Context) DataLakeSettingsCreateTableDefaultPermissionArrayOutput

type DataLakeSettingsCreateTableDefaultPermissionArrayInput

type DataLakeSettingsCreateTableDefaultPermissionArrayInput interface {
	pulumi.Input

	ToDataLakeSettingsCreateTableDefaultPermissionArrayOutput() DataLakeSettingsCreateTableDefaultPermissionArrayOutput
	ToDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext(context.Context) DataLakeSettingsCreateTableDefaultPermissionArrayOutput
}

DataLakeSettingsCreateTableDefaultPermissionArrayInput is an input type that accepts DataLakeSettingsCreateTableDefaultPermissionArray and DataLakeSettingsCreateTableDefaultPermissionArrayOutput values. You can construct a concrete instance of `DataLakeSettingsCreateTableDefaultPermissionArrayInput` via:

DataLakeSettingsCreateTableDefaultPermissionArray{ DataLakeSettingsCreateTableDefaultPermissionArgs{...} }

type DataLakeSettingsCreateTableDefaultPermissionArrayOutput

type DataLakeSettingsCreateTableDefaultPermissionArrayOutput struct{ *pulumi.OutputState }

func (DataLakeSettingsCreateTableDefaultPermissionArrayOutput) ElementType

func (DataLakeSettingsCreateTableDefaultPermissionArrayOutput) Index

func (DataLakeSettingsCreateTableDefaultPermissionArrayOutput) ToDataLakeSettingsCreateTableDefaultPermissionArrayOutput

func (DataLakeSettingsCreateTableDefaultPermissionArrayOutput) ToDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext

func (o DataLakeSettingsCreateTableDefaultPermissionArrayOutput) ToDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext(ctx context.Context) DataLakeSettingsCreateTableDefaultPermissionArrayOutput

type DataLakeSettingsCreateTableDefaultPermissionInput

type DataLakeSettingsCreateTableDefaultPermissionInput interface {
	pulumi.Input

	ToDataLakeSettingsCreateTableDefaultPermissionOutput() DataLakeSettingsCreateTableDefaultPermissionOutput
	ToDataLakeSettingsCreateTableDefaultPermissionOutputWithContext(context.Context) DataLakeSettingsCreateTableDefaultPermissionOutput
}

DataLakeSettingsCreateTableDefaultPermissionInput is an input type that accepts DataLakeSettingsCreateTableDefaultPermissionArgs and DataLakeSettingsCreateTableDefaultPermissionOutput values. You can construct a concrete instance of `DataLakeSettingsCreateTableDefaultPermissionInput` via:

DataLakeSettingsCreateTableDefaultPermissionArgs{...}

type DataLakeSettingsCreateTableDefaultPermissionOutput

type DataLakeSettingsCreateTableDefaultPermissionOutput struct{ *pulumi.OutputState }

func (DataLakeSettingsCreateTableDefaultPermissionOutput) ElementType

func (DataLakeSettingsCreateTableDefaultPermissionOutput) Permissions

List of permissions that are granted to the principal. Valid values may include `ALL`, `SELECT`, `ALTER`, `DROP`, `DELETE`, `INSERT`, and `DESCRIBE`. For more details, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).

func (DataLakeSettingsCreateTableDefaultPermissionOutput) Principal

Principal who is granted permissions. To enforce metadata and underlying data access control only by IAM on new databases and tables set `principal` to `IAM_ALLOWED_PRINCIPALS` and `permissions` to `["ALL"]`.

func (DataLakeSettingsCreateTableDefaultPermissionOutput) ToDataLakeSettingsCreateTableDefaultPermissionOutput

func (o DataLakeSettingsCreateTableDefaultPermissionOutput) ToDataLakeSettingsCreateTableDefaultPermissionOutput() DataLakeSettingsCreateTableDefaultPermissionOutput

func (DataLakeSettingsCreateTableDefaultPermissionOutput) ToDataLakeSettingsCreateTableDefaultPermissionOutputWithContext

func (o DataLakeSettingsCreateTableDefaultPermissionOutput) ToDataLakeSettingsCreateTableDefaultPermissionOutputWithContext(ctx context.Context) DataLakeSettingsCreateTableDefaultPermissionOutput

type DataLakeSettingsInput

type DataLakeSettingsInput interface {
	pulumi.Input

	ToDataLakeSettingsOutput() DataLakeSettingsOutput
	ToDataLakeSettingsOutputWithContext(ctx context.Context) DataLakeSettingsOutput
}

type DataLakeSettingsMap

type DataLakeSettingsMap map[string]DataLakeSettingsInput

func (DataLakeSettingsMap) ElementType

func (DataLakeSettingsMap) ElementType() reflect.Type

func (DataLakeSettingsMap) ToDataLakeSettingsMapOutput

func (i DataLakeSettingsMap) ToDataLakeSettingsMapOutput() DataLakeSettingsMapOutput

func (DataLakeSettingsMap) ToDataLakeSettingsMapOutputWithContext

func (i DataLakeSettingsMap) ToDataLakeSettingsMapOutputWithContext(ctx context.Context) DataLakeSettingsMapOutput

type DataLakeSettingsMapInput

type DataLakeSettingsMapInput interface {
	pulumi.Input

	ToDataLakeSettingsMapOutput() DataLakeSettingsMapOutput
	ToDataLakeSettingsMapOutputWithContext(context.Context) DataLakeSettingsMapOutput
}

DataLakeSettingsMapInput is an input type that accepts DataLakeSettingsMap and DataLakeSettingsMapOutput values. You can construct a concrete instance of `DataLakeSettingsMapInput` via:

DataLakeSettingsMap{ "key": DataLakeSettingsArgs{...} }

type DataLakeSettingsMapOutput

type DataLakeSettingsMapOutput struct{ *pulumi.OutputState }

func (DataLakeSettingsMapOutput) ElementType

func (DataLakeSettingsMapOutput) ElementType() reflect.Type

func (DataLakeSettingsMapOutput) MapIndex

func (DataLakeSettingsMapOutput) ToDataLakeSettingsMapOutput

func (o DataLakeSettingsMapOutput) ToDataLakeSettingsMapOutput() DataLakeSettingsMapOutput

func (DataLakeSettingsMapOutput) ToDataLakeSettingsMapOutputWithContext

func (o DataLakeSettingsMapOutput) ToDataLakeSettingsMapOutputWithContext(ctx context.Context) DataLakeSettingsMapOutput

type DataLakeSettingsOutput

type DataLakeSettingsOutput struct{ *pulumi.OutputState }

func (DataLakeSettingsOutput) Admins added in v5.4.0

Set of ARNs of AWS Lake Formation principals (IAM users or roles).

func (DataLakeSettingsOutput) AllowExternalDataFiltering added in v5.38.0

func (o DataLakeSettingsOutput) AllowExternalDataFiltering() pulumi.BoolPtrOutput

Whether to allow Amazon EMR clusters to access data managed by Lake Formation.

func (DataLakeSettingsOutput) AuthorizedSessionTagValueLists added in v5.38.0

func (o DataLakeSettingsOutput) AuthorizedSessionTagValueLists() pulumi.StringArrayOutput

Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it.

> **NOTE:** Although optional, not including `admins`, `createDatabaseDefaultPermissions`, `createTableDefaultPermissions`, and/or `trustedResourceOwners` results in the setting being cleared.

func (DataLakeSettingsOutput) CatalogId added in v5.4.0

Identifier for the Data Catalog. By default, the account ID.

func (DataLakeSettingsOutput) CreateDatabaseDefaultPermissions added in v5.4.0

Up to three configuration blocks of principal permissions for default create database permissions. Detailed below.

func (DataLakeSettingsOutput) CreateTableDefaultPermissions added in v5.4.0

Up to three configuration blocks of principal permissions for default create table permissions. Detailed below.

func (DataLakeSettingsOutput) ElementType

func (DataLakeSettingsOutput) ElementType() reflect.Type

func (DataLakeSettingsOutput) ExternalDataFilteringAllowLists added in v5.38.0

func (o DataLakeSettingsOutput) ExternalDataFilteringAllowLists() pulumi.StringArrayOutput

A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.

func (DataLakeSettingsOutput) ToDataLakeSettingsOutput

func (o DataLakeSettingsOutput) ToDataLakeSettingsOutput() DataLakeSettingsOutput

func (DataLakeSettingsOutput) ToDataLakeSettingsOutputWithContext

func (o DataLakeSettingsOutput) ToDataLakeSettingsOutputWithContext(ctx context.Context) DataLakeSettingsOutput

func (DataLakeSettingsOutput) TrustedResourceOwners added in v5.4.0

func (o DataLakeSettingsOutput) TrustedResourceOwners() pulumi.StringArrayOutput

List of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs).

type DataLakeSettingsState

type DataLakeSettingsState struct {
	// Set of ARNs of AWS Lake Formation principals (IAM users or roles).
	Admins pulumi.StringArrayInput
	// Whether to allow Amazon EMR clusters to access data managed by Lake Formation.
	AllowExternalDataFiltering pulumi.BoolPtrInput
	// Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it.
	//
	// > **NOTE:** Although optional, not including `admins`, `createDatabaseDefaultPermissions`, `createTableDefaultPermissions`, and/or `trustedResourceOwners` results in the setting being cleared.
	AuthorizedSessionTagValueLists pulumi.StringArrayInput
	// Identifier for the Data Catalog. By default, the account ID.
	CatalogId pulumi.StringPtrInput
	// Up to three configuration blocks of principal permissions for default create database permissions. Detailed below.
	CreateDatabaseDefaultPermissions DataLakeSettingsCreateDatabaseDefaultPermissionArrayInput
	// Up to three configuration blocks of principal permissions for default create table permissions. Detailed below.
	CreateTableDefaultPermissions DataLakeSettingsCreateTableDefaultPermissionArrayInput
	// A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.
	ExternalDataFilteringAllowLists pulumi.StringArrayInput
	// List of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs).
	TrustedResourceOwners pulumi.StringArrayInput
}

func (DataLakeSettingsState) ElementType

func (DataLakeSettingsState) ElementType() reflect.Type

type GetDataLakeSettingsCreateDatabaseDefaultPermission

type GetDataLakeSettingsCreateDatabaseDefaultPermission struct {
	// List of permissions granted to the principal.
	Permissions []string `pulumi:"permissions"`
	// Principal who is granted permissions.
	Principal string `pulumi:"principal"`
}

type GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs

type GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs struct {
	// List of permissions granted to the principal.
	Permissions pulumi.StringArrayInput `pulumi:"permissions"`
	// Principal who is granted permissions.
	Principal pulumi.StringInput `pulumi:"principal"`
}

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs) ElementType

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionOutput

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext

func (i GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext(ctx context.Context) GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput

type GetDataLakeSettingsCreateDatabaseDefaultPermissionArray

type GetDataLakeSettingsCreateDatabaseDefaultPermissionArray []GetDataLakeSettingsCreateDatabaseDefaultPermissionInput

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArray) ElementType

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArray) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

func (i GetDataLakeSettingsCreateDatabaseDefaultPermissionArray) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput() GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArray) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext

func (i GetDataLakeSettingsCreateDatabaseDefaultPermissionArray) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext(ctx context.Context) GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

type GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayInput

type GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayInput interface {
	pulumi.Input

	ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput() GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput
	ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext(context.Context) GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput
}

GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayInput is an input type that accepts GetDataLakeSettingsCreateDatabaseDefaultPermissionArray and GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput values. You can construct a concrete instance of `GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayInput` via:

GetDataLakeSettingsCreateDatabaseDefaultPermissionArray{ GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs{...} }

type GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

type GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput struct{ *pulumi.OutputState }

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) ElementType

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) Index

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext

func (o GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutputWithContext(ctx context.Context) GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput

type GetDataLakeSettingsCreateDatabaseDefaultPermissionInput

type GetDataLakeSettingsCreateDatabaseDefaultPermissionInput interface {
	pulumi.Input

	ToGetDataLakeSettingsCreateDatabaseDefaultPermissionOutput() GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput
	ToGetDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext(context.Context) GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput
}

GetDataLakeSettingsCreateDatabaseDefaultPermissionInput is an input type that accepts GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs and GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput values. You can construct a concrete instance of `GetDataLakeSettingsCreateDatabaseDefaultPermissionInput` via:

GetDataLakeSettingsCreateDatabaseDefaultPermissionArgs{...}

type GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput

type GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput struct{ *pulumi.OutputState }

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput) ElementType

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput) Permissions

List of permissions granted to the principal.

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput) Principal

Principal who is granted permissions.

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionOutput

func (GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext

func (o GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput) ToGetDataLakeSettingsCreateDatabaseDefaultPermissionOutputWithContext(ctx context.Context) GetDataLakeSettingsCreateDatabaseDefaultPermissionOutput

type GetDataLakeSettingsCreateTableDefaultPermission

type GetDataLakeSettingsCreateTableDefaultPermission struct {
	// List of permissions granted to the principal.
	Permissions []string `pulumi:"permissions"`
	// Principal who is granted permissions.
	Principal string `pulumi:"principal"`
}

type GetDataLakeSettingsCreateTableDefaultPermissionArgs

type GetDataLakeSettingsCreateTableDefaultPermissionArgs struct {
	// List of permissions granted to the principal.
	Permissions pulumi.StringArrayInput `pulumi:"permissions"`
	// Principal who is granted permissions.
	Principal pulumi.StringInput `pulumi:"principal"`
}

func (GetDataLakeSettingsCreateTableDefaultPermissionArgs) ElementType

func (GetDataLakeSettingsCreateTableDefaultPermissionArgs) ToGetDataLakeSettingsCreateTableDefaultPermissionOutput

func (i GetDataLakeSettingsCreateTableDefaultPermissionArgs) ToGetDataLakeSettingsCreateTableDefaultPermissionOutput() GetDataLakeSettingsCreateTableDefaultPermissionOutput

func (GetDataLakeSettingsCreateTableDefaultPermissionArgs) ToGetDataLakeSettingsCreateTableDefaultPermissionOutputWithContext

func (i GetDataLakeSettingsCreateTableDefaultPermissionArgs) ToGetDataLakeSettingsCreateTableDefaultPermissionOutputWithContext(ctx context.Context) GetDataLakeSettingsCreateTableDefaultPermissionOutput

type GetDataLakeSettingsCreateTableDefaultPermissionArray

type GetDataLakeSettingsCreateTableDefaultPermissionArray []GetDataLakeSettingsCreateTableDefaultPermissionInput

func (GetDataLakeSettingsCreateTableDefaultPermissionArray) ElementType

func (GetDataLakeSettingsCreateTableDefaultPermissionArray) ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutput

func (i GetDataLakeSettingsCreateTableDefaultPermissionArray) ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutput() GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput

func (GetDataLakeSettingsCreateTableDefaultPermissionArray) ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext

func (i GetDataLakeSettingsCreateTableDefaultPermissionArray) ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext(ctx context.Context) GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput

type GetDataLakeSettingsCreateTableDefaultPermissionArrayInput

type GetDataLakeSettingsCreateTableDefaultPermissionArrayInput interface {
	pulumi.Input

	ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutput() GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput
	ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext(context.Context) GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput
}

GetDataLakeSettingsCreateTableDefaultPermissionArrayInput is an input type that accepts GetDataLakeSettingsCreateTableDefaultPermissionArray and GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput values. You can construct a concrete instance of `GetDataLakeSettingsCreateTableDefaultPermissionArrayInput` via:

GetDataLakeSettingsCreateTableDefaultPermissionArray{ GetDataLakeSettingsCreateTableDefaultPermissionArgs{...} }

type GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput

type GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput struct{ *pulumi.OutputState }

func (GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput) ElementType

func (GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput) Index

func (GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput) ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutput

func (GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput) ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext

func (o GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput) ToGetDataLakeSettingsCreateTableDefaultPermissionArrayOutputWithContext(ctx context.Context) GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput

type GetDataLakeSettingsCreateTableDefaultPermissionInput

type GetDataLakeSettingsCreateTableDefaultPermissionInput interface {
	pulumi.Input

	ToGetDataLakeSettingsCreateTableDefaultPermissionOutput() GetDataLakeSettingsCreateTableDefaultPermissionOutput
	ToGetDataLakeSettingsCreateTableDefaultPermissionOutputWithContext(context.Context) GetDataLakeSettingsCreateTableDefaultPermissionOutput
}

GetDataLakeSettingsCreateTableDefaultPermissionInput is an input type that accepts GetDataLakeSettingsCreateTableDefaultPermissionArgs and GetDataLakeSettingsCreateTableDefaultPermissionOutput values. You can construct a concrete instance of `GetDataLakeSettingsCreateTableDefaultPermissionInput` via:

GetDataLakeSettingsCreateTableDefaultPermissionArgs{...}

type GetDataLakeSettingsCreateTableDefaultPermissionOutput

type GetDataLakeSettingsCreateTableDefaultPermissionOutput struct{ *pulumi.OutputState }

func (GetDataLakeSettingsCreateTableDefaultPermissionOutput) ElementType

func (GetDataLakeSettingsCreateTableDefaultPermissionOutput) Permissions

List of permissions granted to the principal.

func (GetDataLakeSettingsCreateTableDefaultPermissionOutput) Principal

Principal who is granted permissions.

func (GetDataLakeSettingsCreateTableDefaultPermissionOutput) ToGetDataLakeSettingsCreateTableDefaultPermissionOutput

func (GetDataLakeSettingsCreateTableDefaultPermissionOutput) ToGetDataLakeSettingsCreateTableDefaultPermissionOutputWithContext

func (o GetDataLakeSettingsCreateTableDefaultPermissionOutput) ToGetDataLakeSettingsCreateTableDefaultPermissionOutputWithContext(ctx context.Context) GetDataLakeSettingsCreateTableDefaultPermissionOutput

type GetPermissionsDataLocation

type GetPermissionsDataLocation struct {
	// ARN that uniquely identifies the data location resource.
	//
	// The following argument is optional:
	Arn string `pulumi:"arn"`
	// Identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.
	CatalogId string `pulumi:"catalogId"`
}

type GetPermissionsDataLocationArgs

type GetPermissionsDataLocationArgs struct {
	// ARN that uniquely identifies the data location resource.
	//
	// The following argument is optional:
	Arn pulumi.StringInput `pulumi:"arn"`
	// Identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.
	CatalogId pulumi.StringInput `pulumi:"catalogId"`
}

func (GetPermissionsDataLocationArgs) ElementType

func (GetPermissionsDataLocationArgs) ToGetPermissionsDataLocationOutput

func (i GetPermissionsDataLocationArgs) ToGetPermissionsDataLocationOutput() GetPermissionsDataLocationOutput

func (GetPermissionsDataLocationArgs) ToGetPermissionsDataLocationOutputWithContext

func (i GetPermissionsDataLocationArgs) ToGetPermissionsDataLocationOutputWithContext(ctx context.Context) GetPermissionsDataLocationOutput

func (GetPermissionsDataLocationArgs) ToGetPermissionsDataLocationPtrOutput

func (i GetPermissionsDataLocationArgs) ToGetPermissionsDataLocationPtrOutput() GetPermissionsDataLocationPtrOutput

func (GetPermissionsDataLocationArgs) ToGetPermissionsDataLocationPtrOutputWithContext

func (i GetPermissionsDataLocationArgs) ToGetPermissionsDataLocationPtrOutputWithContext(ctx context.Context) GetPermissionsDataLocationPtrOutput

type GetPermissionsDataLocationInput

type GetPermissionsDataLocationInput interface {
	pulumi.Input

	ToGetPermissionsDataLocationOutput() GetPermissionsDataLocationOutput
	ToGetPermissionsDataLocationOutputWithContext(context.Context) GetPermissionsDataLocationOutput
}

GetPermissionsDataLocationInput is an input type that accepts GetPermissionsDataLocationArgs and GetPermissionsDataLocationOutput values. You can construct a concrete instance of `GetPermissionsDataLocationInput` via:

GetPermissionsDataLocationArgs{...}

type GetPermissionsDataLocationOutput

type GetPermissionsDataLocationOutput struct{ *pulumi.OutputState }

func (GetPermissionsDataLocationOutput) Arn

ARN that uniquely identifies the data location resource.

The following argument is optional:

func (GetPermissionsDataLocationOutput) CatalogId

Identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.

func (GetPermissionsDataLocationOutput) ElementType

func (GetPermissionsDataLocationOutput) ToGetPermissionsDataLocationOutput

func (o GetPermissionsDataLocationOutput) ToGetPermissionsDataLocationOutput() GetPermissionsDataLocationOutput

func (GetPermissionsDataLocationOutput) ToGetPermissionsDataLocationOutputWithContext

func (o GetPermissionsDataLocationOutput) ToGetPermissionsDataLocationOutputWithContext(ctx context.Context) GetPermissionsDataLocationOutput

func (GetPermissionsDataLocationOutput) ToGetPermissionsDataLocationPtrOutput

func (o GetPermissionsDataLocationOutput) ToGetPermissionsDataLocationPtrOutput() GetPermissionsDataLocationPtrOutput

func (GetPermissionsDataLocationOutput) ToGetPermissionsDataLocationPtrOutputWithContext

func (o GetPermissionsDataLocationOutput) ToGetPermissionsDataLocationPtrOutputWithContext(ctx context.Context) GetPermissionsDataLocationPtrOutput

type GetPermissionsDataLocationPtrInput

type GetPermissionsDataLocationPtrInput interface {
	pulumi.Input

	ToGetPermissionsDataLocationPtrOutput() GetPermissionsDataLocationPtrOutput
	ToGetPermissionsDataLocationPtrOutputWithContext(context.Context) GetPermissionsDataLocationPtrOutput
}

GetPermissionsDataLocationPtrInput is an input type that accepts GetPermissionsDataLocationArgs, GetPermissionsDataLocationPtr and GetPermissionsDataLocationPtrOutput values. You can construct a concrete instance of `GetPermissionsDataLocationPtrInput` via:

        GetPermissionsDataLocationArgs{...}

or:

        nil

type GetPermissionsDataLocationPtrOutput

type GetPermissionsDataLocationPtrOutput struct{ *pulumi.OutputState }

func (GetPermissionsDataLocationPtrOutput) Arn

ARN that uniquely identifies the data location resource.

The following argument is optional:

func (GetPermissionsDataLocationPtrOutput) CatalogId

Identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.

func (GetPermissionsDataLocationPtrOutput) Elem

func (GetPermissionsDataLocationPtrOutput) ElementType

func (GetPermissionsDataLocationPtrOutput) ToGetPermissionsDataLocationPtrOutput

func (o GetPermissionsDataLocationPtrOutput) ToGetPermissionsDataLocationPtrOutput() GetPermissionsDataLocationPtrOutput

func (GetPermissionsDataLocationPtrOutput) ToGetPermissionsDataLocationPtrOutputWithContext

func (o GetPermissionsDataLocationPtrOutput) ToGetPermissionsDataLocationPtrOutputWithContext(ctx context.Context) GetPermissionsDataLocationPtrOutput

type GetPermissionsDatabase

type GetPermissionsDatabase struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId string `pulumi:"catalogId"`
	// Name of the database resource. Unique to the Data Catalog.
	//
	// The following argument is optional:
	Name string `pulumi:"name"`
}

type GetPermissionsDatabaseArgs

type GetPermissionsDatabaseArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringInput `pulumi:"catalogId"`
	// Name of the database resource. Unique to the Data Catalog.
	//
	// The following argument is optional:
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetPermissionsDatabaseArgs) ElementType

func (GetPermissionsDatabaseArgs) ElementType() reflect.Type

func (GetPermissionsDatabaseArgs) ToGetPermissionsDatabaseOutput

func (i GetPermissionsDatabaseArgs) ToGetPermissionsDatabaseOutput() GetPermissionsDatabaseOutput

func (GetPermissionsDatabaseArgs) ToGetPermissionsDatabaseOutputWithContext

func (i GetPermissionsDatabaseArgs) ToGetPermissionsDatabaseOutputWithContext(ctx context.Context) GetPermissionsDatabaseOutput

func (GetPermissionsDatabaseArgs) ToGetPermissionsDatabasePtrOutput

func (i GetPermissionsDatabaseArgs) ToGetPermissionsDatabasePtrOutput() GetPermissionsDatabasePtrOutput

func (GetPermissionsDatabaseArgs) ToGetPermissionsDatabasePtrOutputWithContext

func (i GetPermissionsDatabaseArgs) ToGetPermissionsDatabasePtrOutputWithContext(ctx context.Context) GetPermissionsDatabasePtrOutput

type GetPermissionsDatabaseInput

type GetPermissionsDatabaseInput interface {
	pulumi.Input

	ToGetPermissionsDatabaseOutput() GetPermissionsDatabaseOutput
	ToGetPermissionsDatabaseOutputWithContext(context.Context) GetPermissionsDatabaseOutput
}

GetPermissionsDatabaseInput is an input type that accepts GetPermissionsDatabaseArgs and GetPermissionsDatabaseOutput values. You can construct a concrete instance of `GetPermissionsDatabaseInput` via:

GetPermissionsDatabaseArgs{...}

type GetPermissionsDatabaseOutput

type GetPermissionsDatabaseOutput struct{ *pulumi.OutputState }

func (GetPermissionsDatabaseOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsDatabaseOutput) ElementType

func (GetPermissionsDatabaseOutput) Name

Name of the database resource. Unique to the Data Catalog.

The following argument is optional:

func (GetPermissionsDatabaseOutput) ToGetPermissionsDatabaseOutput

func (o GetPermissionsDatabaseOutput) ToGetPermissionsDatabaseOutput() GetPermissionsDatabaseOutput

func (GetPermissionsDatabaseOutput) ToGetPermissionsDatabaseOutputWithContext

func (o GetPermissionsDatabaseOutput) ToGetPermissionsDatabaseOutputWithContext(ctx context.Context) GetPermissionsDatabaseOutput

func (GetPermissionsDatabaseOutput) ToGetPermissionsDatabasePtrOutput

func (o GetPermissionsDatabaseOutput) ToGetPermissionsDatabasePtrOutput() GetPermissionsDatabasePtrOutput

func (GetPermissionsDatabaseOutput) ToGetPermissionsDatabasePtrOutputWithContext

func (o GetPermissionsDatabaseOutput) ToGetPermissionsDatabasePtrOutputWithContext(ctx context.Context) GetPermissionsDatabasePtrOutput

type GetPermissionsDatabasePtrInput

type GetPermissionsDatabasePtrInput interface {
	pulumi.Input

	ToGetPermissionsDatabasePtrOutput() GetPermissionsDatabasePtrOutput
	ToGetPermissionsDatabasePtrOutputWithContext(context.Context) GetPermissionsDatabasePtrOutput
}

GetPermissionsDatabasePtrInput is an input type that accepts GetPermissionsDatabaseArgs, GetPermissionsDatabasePtr and GetPermissionsDatabasePtrOutput values. You can construct a concrete instance of `GetPermissionsDatabasePtrInput` via:

        GetPermissionsDatabaseArgs{...}

or:

        nil

type GetPermissionsDatabasePtrOutput

type GetPermissionsDatabasePtrOutput struct{ *pulumi.OutputState }

func (GetPermissionsDatabasePtrOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsDatabasePtrOutput) Elem

func (GetPermissionsDatabasePtrOutput) ElementType

func (GetPermissionsDatabasePtrOutput) Name

Name of the database resource. Unique to the Data Catalog.

The following argument is optional:

func (GetPermissionsDatabasePtrOutput) ToGetPermissionsDatabasePtrOutput

func (o GetPermissionsDatabasePtrOutput) ToGetPermissionsDatabasePtrOutput() GetPermissionsDatabasePtrOutput

func (GetPermissionsDatabasePtrOutput) ToGetPermissionsDatabasePtrOutputWithContext

func (o GetPermissionsDatabasePtrOutput) ToGetPermissionsDatabasePtrOutputWithContext(ctx context.Context) GetPermissionsDatabasePtrOutput

type GetPermissionsLfTag added in v5.10.0

type GetPermissionsLfTag struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId string `pulumi:"catalogId"`
	// Key-name for the tag.
	Key string `pulumi:"key"`
	// List of possible values an attribute can take.
	//
	// The following argument is optional:
	Values []string `pulumi:"values"`
}

type GetPermissionsLfTagArgs added in v5.10.0

type GetPermissionsLfTagArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringInput `pulumi:"catalogId"`
	// Key-name for the tag.
	Key pulumi.StringInput `pulumi:"key"`
	// List of possible values an attribute can take.
	//
	// The following argument is optional:
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetPermissionsLfTagArgs) ElementType added in v5.10.0

func (GetPermissionsLfTagArgs) ElementType() reflect.Type

func (GetPermissionsLfTagArgs) ToGetPermissionsLfTagOutput added in v5.10.0

func (i GetPermissionsLfTagArgs) ToGetPermissionsLfTagOutput() GetPermissionsLfTagOutput

func (GetPermissionsLfTagArgs) ToGetPermissionsLfTagOutputWithContext added in v5.10.0

func (i GetPermissionsLfTagArgs) ToGetPermissionsLfTagOutputWithContext(ctx context.Context) GetPermissionsLfTagOutput

func (GetPermissionsLfTagArgs) ToGetPermissionsLfTagPtrOutput added in v5.10.0

func (i GetPermissionsLfTagArgs) ToGetPermissionsLfTagPtrOutput() GetPermissionsLfTagPtrOutput

func (GetPermissionsLfTagArgs) ToGetPermissionsLfTagPtrOutputWithContext added in v5.10.0

func (i GetPermissionsLfTagArgs) ToGetPermissionsLfTagPtrOutputWithContext(ctx context.Context) GetPermissionsLfTagPtrOutput

type GetPermissionsLfTagInput added in v5.10.0

type GetPermissionsLfTagInput interface {
	pulumi.Input

	ToGetPermissionsLfTagOutput() GetPermissionsLfTagOutput
	ToGetPermissionsLfTagOutputWithContext(context.Context) GetPermissionsLfTagOutput
}

GetPermissionsLfTagInput is an input type that accepts GetPermissionsLfTagArgs and GetPermissionsLfTagOutput values. You can construct a concrete instance of `GetPermissionsLfTagInput` via:

GetPermissionsLfTagArgs{...}

type GetPermissionsLfTagOutput added in v5.10.0

type GetPermissionsLfTagOutput struct{ *pulumi.OutputState }

func (GetPermissionsLfTagOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsLfTagOutput) ElementType added in v5.10.0

func (GetPermissionsLfTagOutput) ElementType() reflect.Type

func (GetPermissionsLfTagOutput) Key added in v5.10.0

Key-name for the tag.

func (GetPermissionsLfTagOutput) ToGetPermissionsLfTagOutput added in v5.10.0

func (o GetPermissionsLfTagOutput) ToGetPermissionsLfTagOutput() GetPermissionsLfTagOutput

func (GetPermissionsLfTagOutput) ToGetPermissionsLfTagOutputWithContext added in v5.10.0

func (o GetPermissionsLfTagOutput) ToGetPermissionsLfTagOutputWithContext(ctx context.Context) GetPermissionsLfTagOutput

func (GetPermissionsLfTagOutput) ToGetPermissionsLfTagPtrOutput added in v5.10.0

func (o GetPermissionsLfTagOutput) ToGetPermissionsLfTagPtrOutput() GetPermissionsLfTagPtrOutput

func (GetPermissionsLfTagOutput) ToGetPermissionsLfTagPtrOutputWithContext added in v5.10.0

func (o GetPermissionsLfTagOutput) ToGetPermissionsLfTagPtrOutputWithContext(ctx context.Context) GetPermissionsLfTagPtrOutput

func (GetPermissionsLfTagOutput) Values added in v5.10.0

List of possible values an attribute can take.

The following argument is optional:

type GetPermissionsLfTagPolicy added in v5.10.0

type GetPermissionsLfTagPolicy struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId string `pulumi:"catalogId"`
	// List of tag conditions that apply to the resource's tag policy. Configuration block for tag conditions that apply to the policy. See `expression` below.
	//
	// The following argument is optional:
	Expressions []GetPermissionsLfTagPolicyExpression `pulumi:"expressions"`
	// Resource type for which the tag policy applies. Valid values are `DATABASE` and `TABLE`.
	ResourceType string `pulumi:"resourceType"`
}

type GetPermissionsLfTagPolicyArgs added in v5.10.0

type GetPermissionsLfTagPolicyArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringInput `pulumi:"catalogId"`
	// List of tag conditions that apply to the resource's tag policy. Configuration block for tag conditions that apply to the policy. See `expression` below.
	//
	// The following argument is optional:
	Expressions GetPermissionsLfTagPolicyExpressionArrayInput `pulumi:"expressions"`
	// Resource type for which the tag policy applies. Valid values are `DATABASE` and `TABLE`.
	ResourceType pulumi.StringInput `pulumi:"resourceType"`
}

func (GetPermissionsLfTagPolicyArgs) ElementType added in v5.10.0

func (GetPermissionsLfTagPolicyArgs) ToGetPermissionsLfTagPolicyOutput added in v5.10.0

func (i GetPermissionsLfTagPolicyArgs) ToGetPermissionsLfTagPolicyOutput() GetPermissionsLfTagPolicyOutput

func (GetPermissionsLfTagPolicyArgs) ToGetPermissionsLfTagPolicyOutputWithContext added in v5.10.0

func (i GetPermissionsLfTagPolicyArgs) ToGetPermissionsLfTagPolicyOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyOutput

func (GetPermissionsLfTagPolicyArgs) ToGetPermissionsLfTagPolicyPtrOutput added in v5.10.0

func (i GetPermissionsLfTagPolicyArgs) ToGetPermissionsLfTagPolicyPtrOutput() GetPermissionsLfTagPolicyPtrOutput

func (GetPermissionsLfTagPolicyArgs) ToGetPermissionsLfTagPolicyPtrOutputWithContext added in v5.10.0

func (i GetPermissionsLfTagPolicyArgs) ToGetPermissionsLfTagPolicyPtrOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyPtrOutput

type GetPermissionsLfTagPolicyExpression added in v5.10.0

type GetPermissionsLfTagPolicyExpression struct {
	// Key-name of an LF-Tag.
	Key string `pulumi:"key"`
	// List of possible values of an LF-Tag.
	Values []string `pulumi:"values"`
}

type GetPermissionsLfTagPolicyExpressionArgs added in v5.10.0

type GetPermissionsLfTagPolicyExpressionArgs struct {
	// Key-name of an LF-Tag.
	Key pulumi.StringInput `pulumi:"key"`
	// List of possible values of an LF-Tag.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetPermissionsLfTagPolicyExpressionArgs) ElementType added in v5.10.0

func (GetPermissionsLfTagPolicyExpressionArgs) ToGetPermissionsLfTagPolicyExpressionOutput added in v5.10.0

func (i GetPermissionsLfTagPolicyExpressionArgs) ToGetPermissionsLfTagPolicyExpressionOutput() GetPermissionsLfTagPolicyExpressionOutput

func (GetPermissionsLfTagPolicyExpressionArgs) ToGetPermissionsLfTagPolicyExpressionOutputWithContext added in v5.10.0

func (i GetPermissionsLfTagPolicyExpressionArgs) ToGetPermissionsLfTagPolicyExpressionOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyExpressionOutput

type GetPermissionsLfTagPolicyExpressionArray added in v5.10.0

type GetPermissionsLfTagPolicyExpressionArray []GetPermissionsLfTagPolicyExpressionInput

func (GetPermissionsLfTagPolicyExpressionArray) ElementType added in v5.10.0

func (GetPermissionsLfTagPolicyExpressionArray) ToGetPermissionsLfTagPolicyExpressionArrayOutput added in v5.10.0

func (i GetPermissionsLfTagPolicyExpressionArray) ToGetPermissionsLfTagPolicyExpressionArrayOutput() GetPermissionsLfTagPolicyExpressionArrayOutput

func (GetPermissionsLfTagPolicyExpressionArray) ToGetPermissionsLfTagPolicyExpressionArrayOutputWithContext added in v5.10.0

func (i GetPermissionsLfTagPolicyExpressionArray) ToGetPermissionsLfTagPolicyExpressionArrayOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyExpressionArrayOutput

type GetPermissionsLfTagPolicyExpressionArrayInput added in v5.10.0

type GetPermissionsLfTagPolicyExpressionArrayInput interface {
	pulumi.Input

	ToGetPermissionsLfTagPolicyExpressionArrayOutput() GetPermissionsLfTagPolicyExpressionArrayOutput
	ToGetPermissionsLfTagPolicyExpressionArrayOutputWithContext(context.Context) GetPermissionsLfTagPolicyExpressionArrayOutput
}

GetPermissionsLfTagPolicyExpressionArrayInput is an input type that accepts GetPermissionsLfTagPolicyExpressionArray and GetPermissionsLfTagPolicyExpressionArrayOutput values. You can construct a concrete instance of `GetPermissionsLfTagPolicyExpressionArrayInput` via:

GetPermissionsLfTagPolicyExpressionArray{ GetPermissionsLfTagPolicyExpressionArgs{...} }

type GetPermissionsLfTagPolicyExpressionArrayOutput added in v5.10.0

type GetPermissionsLfTagPolicyExpressionArrayOutput struct{ *pulumi.OutputState }

func (GetPermissionsLfTagPolicyExpressionArrayOutput) ElementType added in v5.10.0

func (GetPermissionsLfTagPolicyExpressionArrayOutput) Index added in v5.10.0

func (GetPermissionsLfTagPolicyExpressionArrayOutput) ToGetPermissionsLfTagPolicyExpressionArrayOutput added in v5.10.0

func (o GetPermissionsLfTagPolicyExpressionArrayOutput) ToGetPermissionsLfTagPolicyExpressionArrayOutput() GetPermissionsLfTagPolicyExpressionArrayOutput

func (GetPermissionsLfTagPolicyExpressionArrayOutput) ToGetPermissionsLfTagPolicyExpressionArrayOutputWithContext added in v5.10.0

func (o GetPermissionsLfTagPolicyExpressionArrayOutput) ToGetPermissionsLfTagPolicyExpressionArrayOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyExpressionArrayOutput

type GetPermissionsLfTagPolicyExpressionInput added in v5.10.0

type GetPermissionsLfTagPolicyExpressionInput interface {
	pulumi.Input

	ToGetPermissionsLfTagPolicyExpressionOutput() GetPermissionsLfTagPolicyExpressionOutput
	ToGetPermissionsLfTagPolicyExpressionOutputWithContext(context.Context) GetPermissionsLfTagPolicyExpressionOutput
}

GetPermissionsLfTagPolicyExpressionInput is an input type that accepts GetPermissionsLfTagPolicyExpressionArgs and GetPermissionsLfTagPolicyExpressionOutput values. You can construct a concrete instance of `GetPermissionsLfTagPolicyExpressionInput` via:

GetPermissionsLfTagPolicyExpressionArgs{...}

type GetPermissionsLfTagPolicyExpressionOutput added in v5.10.0

type GetPermissionsLfTagPolicyExpressionOutput struct{ *pulumi.OutputState }

func (GetPermissionsLfTagPolicyExpressionOutput) ElementType added in v5.10.0

func (GetPermissionsLfTagPolicyExpressionOutput) Key added in v5.10.0

Key-name of an LF-Tag.

func (GetPermissionsLfTagPolicyExpressionOutput) ToGetPermissionsLfTagPolicyExpressionOutput added in v5.10.0

func (o GetPermissionsLfTagPolicyExpressionOutput) ToGetPermissionsLfTagPolicyExpressionOutput() GetPermissionsLfTagPolicyExpressionOutput

func (GetPermissionsLfTagPolicyExpressionOutput) ToGetPermissionsLfTagPolicyExpressionOutputWithContext added in v5.10.0

func (o GetPermissionsLfTagPolicyExpressionOutput) ToGetPermissionsLfTagPolicyExpressionOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyExpressionOutput

func (GetPermissionsLfTagPolicyExpressionOutput) Values added in v5.10.0

List of possible values of an LF-Tag.

type GetPermissionsLfTagPolicyInput added in v5.10.0

type GetPermissionsLfTagPolicyInput interface {
	pulumi.Input

	ToGetPermissionsLfTagPolicyOutput() GetPermissionsLfTagPolicyOutput
	ToGetPermissionsLfTagPolicyOutputWithContext(context.Context) GetPermissionsLfTagPolicyOutput
}

GetPermissionsLfTagPolicyInput is an input type that accepts GetPermissionsLfTagPolicyArgs and GetPermissionsLfTagPolicyOutput values. You can construct a concrete instance of `GetPermissionsLfTagPolicyInput` via:

GetPermissionsLfTagPolicyArgs{...}

type GetPermissionsLfTagPolicyOutput added in v5.10.0

type GetPermissionsLfTagPolicyOutput struct{ *pulumi.OutputState }

func (GetPermissionsLfTagPolicyOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsLfTagPolicyOutput) ElementType added in v5.10.0

func (GetPermissionsLfTagPolicyOutput) Expressions added in v5.10.0

List of tag conditions that apply to the resource's tag policy. Configuration block for tag conditions that apply to the policy. See `expression` below.

The following argument is optional:

func (GetPermissionsLfTagPolicyOutput) ResourceType added in v5.10.0

Resource type for which the tag policy applies. Valid values are `DATABASE` and `TABLE`.

func (GetPermissionsLfTagPolicyOutput) ToGetPermissionsLfTagPolicyOutput added in v5.10.0

func (o GetPermissionsLfTagPolicyOutput) ToGetPermissionsLfTagPolicyOutput() GetPermissionsLfTagPolicyOutput

func (GetPermissionsLfTagPolicyOutput) ToGetPermissionsLfTagPolicyOutputWithContext added in v5.10.0

func (o GetPermissionsLfTagPolicyOutput) ToGetPermissionsLfTagPolicyOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyOutput

func (GetPermissionsLfTagPolicyOutput) ToGetPermissionsLfTagPolicyPtrOutput added in v5.10.0

func (o GetPermissionsLfTagPolicyOutput) ToGetPermissionsLfTagPolicyPtrOutput() GetPermissionsLfTagPolicyPtrOutput

func (GetPermissionsLfTagPolicyOutput) ToGetPermissionsLfTagPolicyPtrOutputWithContext added in v5.10.0

func (o GetPermissionsLfTagPolicyOutput) ToGetPermissionsLfTagPolicyPtrOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyPtrOutput

type GetPermissionsLfTagPolicyPtrInput added in v5.10.0

type GetPermissionsLfTagPolicyPtrInput interface {
	pulumi.Input

	ToGetPermissionsLfTagPolicyPtrOutput() GetPermissionsLfTagPolicyPtrOutput
	ToGetPermissionsLfTagPolicyPtrOutputWithContext(context.Context) GetPermissionsLfTagPolicyPtrOutput
}

GetPermissionsLfTagPolicyPtrInput is an input type that accepts GetPermissionsLfTagPolicyArgs, GetPermissionsLfTagPolicyPtr and GetPermissionsLfTagPolicyPtrOutput values. You can construct a concrete instance of `GetPermissionsLfTagPolicyPtrInput` via:

        GetPermissionsLfTagPolicyArgs{...}

or:

        nil

func GetPermissionsLfTagPolicyPtr added in v5.10.0

type GetPermissionsLfTagPolicyPtrOutput added in v5.10.0

type GetPermissionsLfTagPolicyPtrOutput struct{ *pulumi.OutputState }

func (GetPermissionsLfTagPolicyPtrOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsLfTagPolicyPtrOutput) Elem added in v5.10.0

func (GetPermissionsLfTagPolicyPtrOutput) ElementType added in v5.10.0

func (GetPermissionsLfTagPolicyPtrOutput) Expressions added in v5.10.0

List of tag conditions that apply to the resource's tag policy. Configuration block for tag conditions that apply to the policy. See `expression` below.

The following argument is optional:

func (GetPermissionsLfTagPolicyPtrOutput) ResourceType added in v5.10.0

Resource type for which the tag policy applies. Valid values are `DATABASE` and `TABLE`.

func (GetPermissionsLfTagPolicyPtrOutput) ToGetPermissionsLfTagPolicyPtrOutput added in v5.10.0

func (o GetPermissionsLfTagPolicyPtrOutput) ToGetPermissionsLfTagPolicyPtrOutput() GetPermissionsLfTagPolicyPtrOutput

func (GetPermissionsLfTagPolicyPtrOutput) ToGetPermissionsLfTagPolicyPtrOutputWithContext added in v5.10.0

func (o GetPermissionsLfTagPolicyPtrOutput) ToGetPermissionsLfTagPolicyPtrOutputWithContext(ctx context.Context) GetPermissionsLfTagPolicyPtrOutput

type GetPermissionsLfTagPtrInput added in v5.10.0

type GetPermissionsLfTagPtrInput interface {
	pulumi.Input

	ToGetPermissionsLfTagPtrOutput() GetPermissionsLfTagPtrOutput
	ToGetPermissionsLfTagPtrOutputWithContext(context.Context) GetPermissionsLfTagPtrOutput
}

GetPermissionsLfTagPtrInput is an input type that accepts GetPermissionsLfTagArgs, GetPermissionsLfTagPtr and GetPermissionsLfTagPtrOutput values. You can construct a concrete instance of `GetPermissionsLfTagPtrInput` via:

        GetPermissionsLfTagArgs{...}

or:

        nil

func GetPermissionsLfTagPtr added in v5.10.0

func GetPermissionsLfTagPtr(v *GetPermissionsLfTagArgs) GetPermissionsLfTagPtrInput

type GetPermissionsLfTagPtrOutput added in v5.10.0

type GetPermissionsLfTagPtrOutput struct{ *pulumi.OutputState }

func (GetPermissionsLfTagPtrOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsLfTagPtrOutput) Elem added in v5.10.0

func (GetPermissionsLfTagPtrOutput) ElementType added in v5.10.0

func (GetPermissionsLfTagPtrOutput) Key added in v5.10.0

Key-name for the tag.

func (GetPermissionsLfTagPtrOutput) ToGetPermissionsLfTagPtrOutput added in v5.10.0

func (o GetPermissionsLfTagPtrOutput) ToGetPermissionsLfTagPtrOutput() GetPermissionsLfTagPtrOutput

func (GetPermissionsLfTagPtrOutput) ToGetPermissionsLfTagPtrOutputWithContext added in v5.10.0

func (o GetPermissionsLfTagPtrOutput) ToGetPermissionsLfTagPtrOutputWithContext(ctx context.Context) GetPermissionsLfTagPtrOutput

func (GetPermissionsLfTagPtrOutput) Values added in v5.10.0

List of possible values an attribute can take.

The following argument is optional:

type GetPermissionsTable

type GetPermissionsTable struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId string `pulumi:"catalogId"`
	// Name of the database for the table. Unique to a Data Catalog.
	//
	// The following arguments are optional:
	DatabaseName string `pulumi:"databaseName"`
	// Name of the table. At least one of `name` or `wildcard` is required.
	Name string `pulumi:"name"`
	// Whether to use a wildcard representing every table under a database. At least one of `name` or `wildcard` is required. Defaults to `false`.
	Wildcard *bool `pulumi:"wildcard"`
}

type GetPermissionsTableArgs

type GetPermissionsTableArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringInput `pulumi:"catalogId"`
	// Name of the database for the table. Unique to a Data Catalog.
	//
	// The following arguments are optional:
	DatabaseName pulumi.StringInput `pulumi:"databaseName"`
	// Name of the table. At least one of `name` or `wildcard` is required.
	Name pulumi.StringInput `pulumi:"name"`
	// Whether to use a wildcard representing every table under a database. At least one of `name` or `wildcard` is required. Defaults to `false`.
	Wildcard pulumi.BoolPtrInput `pulumi:"wildcard"`
}

func (GetPermissionsTableArgs) ElementType

func (GetPermissionsTableArgs) ElementType() reflect.Type

func (GetPermissionsTableArgs) ToGetPermissionsTableOutput

func (i GetPermissionsTableArgs) ToGetPermissionsTableOutput() GetPermissionsTableOutput

func (GetPermissionsTableArgs) ToGetPermissionsTableOutputWithContext

func (i GetPermissionsTableArgs) ToGetPermissionsTableOutputWithContext(ctx context.Context) GetPermissionsTableOutput

func (GetPermissionsTableArgs) ToGetPermissionsTablePtrOutput

func (i GetPermissionsTableArgs) ToGetPermissionsTablePtrOutput() GetPermissionsTablePtrOutput

func (GetPermissionsTableArgs) ToGetPermissionsTablePtrOutputWithContext

func (i GetPermissionsTableArgs) ToGetPermissionsTablePtrOutputWithContext(ctx context.Context) GetPermissionsTablePtrOutput

type GetPermissionsTableInput

type GetPermissionsTableInput interface {
	pulumi.Input

	ToGetPermissionsTableOutput() GetPermissionsTableOutput
	ToGetPermissionsTableOutputWithContext(context.Context) GetPermissionsTableOutput
}

GetPermissionsTableInput is an input type that accepts GetPermissionsTableArgs and GetPermissionsTableOutput values. You can construct a concrete instance of `GetPermissionsTableInput` via:

GetPermissionsTableArgs{...}

type GetPermissionsTableOutput

type GetPermissionsTableOutput struct{ *pulumi.OutputState }

func (GetPermissionsTableOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsTableOutput) DatabaseName

Name of the database for the table. Unique to a Data Catalog.

The following arguments are optional:

func (GetPermissionsTableOutput) ElementType

func (GetPermissionsTableOutput) ElementType() reflect.Type

func (GetPermissionsTableOutput) Name

Name of the table. At least one of `name` or `wildcard` is required.

func (GetPermissionsTableOutput) ToGetPermissionsTableOutput

func (o GetPermissionsTableOutput) ToGetPermissionsTableOutput() GetPermissionsTableOutput

func (GetPermissionsTableOutput) ToGetPermissionsTableOutputWithContext

func (o GetPermissionsTableOutput) ToGetPermissionsTableOutputWithContext(ctx context.Context) GetPermissionsTableOutput

func (GetPermissionsTableOutput) ToGetPermissionsTablePtrOutput

func (o GetPermissionsTableOutput) ToGetPermissionsTablePtrOutput() GetPermissionsTablePtrOutput

func (GetPermissionsTableOutput) ToGetPermissionsTablePtrOutputWithContext

func (o GetPermissionsTableOutput) ToGetPermissionsTablePtrOutputWithContext(ctx context.Context) GetPermissionsTablePtrOutput

func (GetPermissionsTableOutput) Wildcard

Whether to use a wildcard representing every table under a database. At least one of `name` or `wildcard` is required. Defaults to `false`.

type GetPermissionsTablePtrInput

type GetPermissionsTablePtrInput interface {
	pulumi.Input

	ToGetPermissionsTablePtrOutput() GetPermissionsTablePtrOutput
	ToGetPermissionsTablePtrOutputWithContext(context.Context) GetPermissionsTablePtrOutput
}

GetPermissionsTablePtrInput is an input type that accepts GetPermissionsTableArgs, GetPermissionsTablePtr and GetPermissionsTablePtrOutput values. You can construct a concrete instance of `GetPermissionsTablePtrInput` via:

        GetPermissionsTableArgs{...}

or:

        nil

type GetPermissionsTablePtrOutput

type GetPermissionsTablePtrOutput struct{ *pulumi.OutputState }

func (GetPermissionsTablePtrOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsTablePtrOutput) DatabaseName

Name of the database for the table. Unique to a Data Catalog.

The following arguments are optional:

func (GetPermissionsTablePtrOutput) Elem

func (GetPermissionsTablePtrOutput) ElementType

func (GetPermissionsTablePtrOutput) Name

Name of the table. At least one of `name` or `wildcard` is required.

func (GetPermissionsTablePtrOutput) ToGetPermissionsTablePtrOutput

func (o GetPermissionsTablePtrOutput) ToGetPermissionsTablePtrOutput() GetPermissionsTablePtrOutput

func (GetPermissionsTablePtrOutput) ToGetPermissionsTablePtrOutputWithContext

func (o GetPermissionsTablePtrOutput) ToGetPermissionsTablePtrOutputWithContext(ctx context.Context) GetPermissionsTablePtrOutput

func (GetPermissionsTablePtrOutput) Wildcard

Whether to use a wildcard representing every table under a database. At least one of `name` or `wildcard` is required. Defaults to `false`.

type GetPermissionsTableWithColumns

type GetPermissionsTableWithColumns struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId string `pulumi:"catalogId"`
	// Set of column names for the table. At least one of `columnNames` or `excludedColumnNames` is required.
	ColumnNames []string `pulumi:"columnNames"`
	// Name of the database for the table with columns resource. Unique to the Data Catalog.
	DatabaseName string `pulumi:"databaseName"`
	// Set of column names for the table to exclude. At least one of `columnNames` or `excludedColumnNames` is required.
	ExcludedColumnNames []string `pulumi:"excludedColumnNames"`
	// Name of the table resource.
	//
	// The following arguments are optional:
	Name string `pulumi:"name"`
	// Whether to use a wildcard representing every table under a database. At least one of `name` or `wildcard` is required. Defaults to `false`.
	Wildcard *bool `pulumi:"wildcard"`
}

type GetPermissionsTableWithColumnsArgs

type GetPermissionsTableWithColumnsArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringInput `pulumi:"catalogId"`
	// Set of column names for the table. At least one of `columnNames` or `excludedColumnNames` is required.
	ColumnNames pulumi.StringArrayInput `pulumi:"columnNames"`
	// Name of the database for the table with columns resource. Unique to the Data Catalog.
	DatabaseName pulumi.StringInput `pulumi:"databaseName"`
	// Set of column names for the table to exclude. At least one of `columnNames` or `excludedColumnNames` is required.
	ExcludedColumnNames pulumi.StringArrayInput `pulumi:"excludedColumnNames"`
	// Name of the table resource.
	//
	// The following arguments are optional:
	Name pulumi.StringInput `pulumi:"name"`
	// Whether to use a wildcard representing every table under a database. At least one of `name` or `wildcard` is required. Defaults to `false`.
	Wildcard pulumi.BoolPtrInput `pulumi:"wildcard"`
}

func (GetPermissionsTableWithColumnsArgs) ElementType

func (GetPermissionsTableWithColumnsArgs) ToGetPermissionsTableWithColumnsOutput

func (i GetPermissionsTableWithColumnsArgs) ToGetPermissionsTableWithColumnsOutput() GetPermissionsTableWithColumnsOutput

func (GetPermissionsTableWithColumnsArgs) ToGetPermissionsTableWithColumnsOutputWithContext

func (i GetPermissionsTableWithColumnsArgs) ToGetPermissionsTableWithColumnsOutputWithContext(ctx context.Context) GetPermissionsTableWithColumnsOutput

func (GetPermissionsTableWithColumnsArgs) ToGetPermissionsTableWithColumnsPtrOutput

func (i GetPermissionsTableWithColumnsArgs) ToGetPermissionsTableWithColumnsPtrOutput() GetPermissionsTableWithColumnsPtrOutput

func (GetPermissionsTableWithColumnsArgs) ToGetPermissionsTableWithColumnsPtrOutputWithContext

func (i GetPermissionsTableWithColumnsArgs) ToGetPermissionsTableWithColumnsPtrOutputWithContext(ctx context.Context) GetPermissionsTableWithColumnsPtrOutput

type GetPermissionsTableWithColumnsInput

type GetPermissionsTableWithColumnsInput interface {
	pulumi.Input

	ToGetPermissionsTableWithColumnsOutput() GetPermissionsTableWithColumnsOutput
	ToGetPermissionsTableWithColumnsOutputWithContext(context.Context) GetPermissionsTableWithColumnsOutput
}

GetPermissionsTableWithColumnsInput is an input type that accepts GetPermissionsTableWithColumnsArgs and GetPermissionsTableWithColumnsOutput values. You can construct a concrete instance of `GetPermissionsTableWithColumnsInput` via:

GetPermissionsTableWithColumnsArgs{...}

type GetPermissionsTableWithColumnsOutput

type GetPermissionsTableWithColumnsOutput struct{ *pulumi.OutputState }

func (GetPermissionsTableWithColumnsOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsTableWithColumnsOutput) ColumnNames

Set of column names for the table. At least one of `columnNames` or `excludedColumnNames` is required.

func (GetPermissionsTableWithColumnsOutput) DatabaseName

Name of the database for the table with columns resource. Unique to the Data Catalog.

func (GetPermissionsTableWithColumnsOutput) ElementType

func (GetPermissionsTableWithColumnsOutput) ExcludedColumnNames

Set of column names for the table to exclude. At least one of `columnNames` or `excludedColumnNames` is required.

func (GetPermissionsTableWithColumnsOutput) Name

Name of the table resource.

The following arguments are optional:

func (GetPermissionsTableWithColumnsOutput) ToGetPermissionsTableWithColumnsOutput

func (o GetPermissionsTableWithColumnsOutput) ToGetPermissionsTableWithColumnsOutput() GetPermissionsTableWithColumnsOutput

func (GetPermissionsTableWithColumnsOutput) ToGetPermissionsTableWithColumnsOutputWithContext

func (o GetPermissionsTableWithColumnsOutput) ToGetPermissionsTableWithColumnsOutputWithContext(ctx context.Context) GetPermissionsTableWithColumnsOutput

func (GetPermissionsTableWithColumnsOutput) ToGetPermissionsTableWithColumnsPtrOutput

func (o GetPermissionsTableWithColumnsOutput) ToGetPermissionsTableWithColumnsPtrOutput() GetPermissionsTableWithColumnsPtrOutput

func (GetPermissionsTableWithColumnsOutput) ToGetPermissionsTableWithColumnsPtrOutputWithContext

func (o GetPermissionsTableWithColumnsOutput) ToGetPermissionsTableWithColumnsPtrOutputWithContext(ctx context.Context) GetPermissionsTableWithColumnsPtrOutput

func (GetPermissionsTableWithColumnsOutput) Wildcard

Whether to use a wildcard representing every table under a database. At least one of `name` or `wildcard` is required. Defaults to `false`.

type GetPermissionsTableWithColumnsPtrInput

type GetPermissionsTableWithColumnsPtrInput interface {
	pulumi.Input

	ToGetPermissionsTableWithColumnsPtrOutput() GetPermissionsTableWithColumnsPtrOutput
	ToGetPermissionsTableWithColumnsPtrOutputWithContext(context.Context) GetPermissionsTableWithColumnsPtrOutput
}

GetPermissionsTableWithColumnsPtrInput is an input type that accepts GetPermissionsTableWithColumnsArgs, GetPermissionsTableWithColumnsPtr and GetPermissionsTableWithColumnsPtrOutput values. You can construct a concrete instance of `GetPermissionsTableWithColumnsPtrInput` via:

        GetPermissionsTableWithColumnsArgs{...}

or:

        nil

type GetPermissionsTableWithColumnsPtrOutput

type GetPermissionsTableWithColumnsPtrOutput struct{ *pulumi.OutputState }

func (GetPermissionsTableWithColumnsPtrOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (GetPermissionsTableWithColumnsPtrOutput) ColumnNames

Set of column names for the table. At least one of `columnNames` or `excludedColumnNames` is required.

func (GetPermissionsTableWithColumnsPtrOutput) DatabaseName

Name of the database for the table with columns resource. Unique to the Data Catalog.

func (GetPermissionsTableWithColumnsPtrOutput) Elem

func (GetPermissionsTableWithColumnsPtrOutput) ElementType

func (GetPermissionsTableWithColumnsPtrOutput) ExcludedColumnNames

Set of column names for the table to exclude. At least one of `columnNames` or `excludedColumnNames` is required.

func (GetPermissionsTableWithColumnsPtrOutput) Name

Name of the table resource.

The following arguments are optional:

func (GetPermissionsTableWithColumnsPtrOutput) ToGetPermissionsTableWithColumnsPtrOutput

func (o GetPermissionsTableWithColumnsPtrOutput) ToGetPermissionsTableWithColumnsPtrOutput() GetPermissionsTableWithColumnsPtrOutput

func (GetPermissionsTableWithColumnsPtrOutput) ToGetPermissionsTableWithColumnsPtrOutputWithContext

func (o GetPermissionsTableWithColumnsPtrOutput) ToGetPermissionsTableWithColumnsPtrOutputWithContext(ctx context.Context) GetPermissionsTableWithColumnsPtrOutput

func (GetPermissionsTableWithColumnsPtrOutput) Wildcard

Whether to use a wildcard representing every table under a database. At least one of `name` or `wildcard` is required. Defaults to `false`.

type LfTag added in v5.10.0

type LfTag struct {
	pulumi.CustomResourceState

	// ID of the Data Catalog to create the tag in. If omitted, this defaults to the AWS Account ID.
	CatalogId pulumi.StringOutput `pulumi:"catalogId"`
	// Key-name for the tag.
	Key pulumi.StringOutput `pulumi:"key"`
	// List of possible values an attribute can take.
	Values pulumi.StringArrayOutput `pulumi:"values"`
}

Creates an LF-Tag with the specified name and values. Each key must have at least one value. The maximum number of values permitted is 15.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.NewLfTag(ctx, "example", &lakeformation.LfTagArgs{
			Key: pulumi.String("module"),
			Values: pulumi.StringArray{
				pulumi.String("Orders"),
				pulumi.String("Sales"),
				pulumi.String("Customers"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Lake Formation LF-Tags can be imported using the `catalog_id:key`. If you have not set a Catalog ID specify the AWS Account ID that the database is in, e.g.

```sh

$ pulumi import aws:lakeformation/lfTag:LfTag example 123456789012:some_key

```

func GetLfTag added in v5.10.0

func GetLfTag(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LfTagState, opts ...pulumi.ResourceOption) (*LfTag, error)

GetLfTag gets an existing LfTag resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLfTag added in v5.10.0

func NewLfTag(ctx *pulumi.Context,
	name string, args *LfTagArgs, opts ...pulumi.ResourceOption) (*LfTag, error)

NewLfTag registers a new resource with the given unique name, arguments, and options.

func (*LfTag) ElementType added in v5.10.0

func (*LfTag) ElementType() reflect.Type

func (*LfTag) ToLfTagOutput added in v5.10.0

func (i *LfTag) ToLfTagOutput() LfTagOutput

func (*LfTag) ToLfTagOutputWithContext added in v5.10.0

func (i *LfTag) ToLfTagOutputWithContext(ctx context.Context) LfTagOutput

type LfTagArgs added in v5.10.0

type LfTagArgs struct {
	// ID of the Data Catalog to create the tag in. If omitted, this defaults to the AWS Account ID.
	CatalogId pulumi.StringPtrInput
	// Key-name for the tag.
	Key pulumi.StringInput
	// List of possible values an attribute can take.
	Values pulumi.StringArrayInput
}

The set of arguments for constructing a LfTag resource.

func (LfTagArgs) ElementType added in v5.10.0

func (LfTagArgs) ElementType() reflect.Type

type LfTagArray added in v5.10.0

type LfTagArray []LfTagInput

func (LfTagArray) ElementType added in v5.10.0

func (LfTagArray) ElementType() reflect.Type

func (LfTagArray) ToLfTagArrayOutput added in v5.10.0

func (i LfTagArray) ToLfTagArrayOutput() LfTagArrayOutput

func (LfTagArray) ToLfTagArrayOutputWithContext added in v5.10.0

func (i LfTagArray) ToLfTagArrayOutputWithContext(ctx context.Context) LfTagArrayOutput

type LfTagArrayInput added in v5.10.0

type LfTagArrayInput interface {
	pulumi.Input

	ToLfTagArrayOutput() LfTagArrayOutput
	ToLfTagArrayOutputWithContext(context.Context) LfTagArrayOutput
}

LfTagArrayInput is an input type that accepts LfTagArray and LfTagArrayOutput values. You can construct a concrete instance of `LfTagArrayInput` via:

LfTagArray{ LfTagArgs{...} }

type LfTagArrayOutput added in v5.10.0

type LfTagArrayOutput struct{ *pulumi.OutputState }

func (LfTagArrayOutput) ElementType added in v5.10.0

func (LfTagArrayOutput) ElementType() reflect.Type

func (LfTagArrayOutput) Index added in v5.10.0

func (LfTagArrayOutput) ToLfTagArrayOutput added in v5.10.0

func (o LfTagArrayOutput) ToLfTagArrayOutput() LfTagArrayOutput

func (LfTagArrayOutput) ToLfTagArrayOutputWithContext added in v5.10.0

func (o LfTagArrayOutput) ToLfTagArrayOutputWithContext(ctx context.Context) LfTagArrayOutput

type LfTagInput added in v5.10.0

type LfTagInput interface {
	pulumi.Input

	ToLfTagOutput() LfTagOutput
	ToLfTagOutputWithContext(ctx context.Context) LfTagOutput
}

type LfTagMap added in v5.10.0

type LfTagMap map[string]LfTagInput

func (LfTagMap) ElementType added in v5.10.0

func (LfTagMap) ElementType() reflect.Type

func (LfTagMap) ToLfTagMapOutput added in v5.10.0

func (i LfTagMap) ToLfTagMapOutput() LfTagMapOutput

func (LfTagMap) ToLfTagMapOutputWithContext added in v5.10.0

func (i LfTagMap) ToLfTagMapOutputWithContext(ctx context.Context) LfTagMapOutput

type LfTagMapInput added in v5.10.0

type LfTagMapInput interface {
	pulumi.Input

	ToLfTagMapOutput() LfTagMapOutput
	ToLfTagMapOutputWithContext(context.Context) LfTagMapOutput
}

LfTagMapInput is an input type that accepts LfTagMap and LfTagMapOutput values. You can construct a concrete instance of `LfTagMapInput` via:

LfTagMap{ "key": LfTagArgs{...} }

type LfTagMapOutput added in v5.10.0

type LfTagMapOutput struct{ *pulumi.OutputState }

func (LfTagMapOutput) ElementType added in v5.10.0

func (LfTagMapOutput) ElementType() reflect.Type

func (LfTagMapOutput) MapIndex added in v5.10.0

func (LfTagMapOutput) ToLfTagMapOutput added in v5.10.0

func (o LfTagMapOutput) ToLfTagMapOutput() LfTagMapOutput

func (LfTagMapOutput) ToLfTagMapOutputWithContext added in v5.10.0

func (o LfTagMapOutput) ToLfTagMapOutputWithContext(ctx context.Context) LfTagMapOutput

type LfTagOutput added in v5.10.0

type LfTagOutput struct{ *pulumi.OutputState }

func (LfTagOutput) CatalogId added in v5.10.0

func (o LfTagOutput) CatalogId() pulumi.StringOutput

ID of the Data Catalog to create the tag in. If omitted, this defaults to the AWS Account ID.

func (LfTagOutput) ElementType added in v5.10.0

func (LfTagOutput) ElementType() reflect.Type

func (LfTagOutput) Key added in v5.10.0

Key-name for the tag.

func (LfTagOutput) ToLfTagOutput added in v5.10.0

func (o LfTagOutput) ToLfTagOutput() LfTagOutput

func (LfTagOutput) ToLfTagOutputWithContext added in v5.10.0

func (o LfTagOutput) ToLfTagOutputWithContext(ctx context.Context) LfTagOutput

func (LfTagOutput) Values added in v5.10.0

List of possible values an attribute can take.

type LfTagState added in v5.10.0

type LfTagState struct {
	// ID of the Data Catalog to create the tag in. If omitted, this defaults to the AWS Account ID.
	CatalogId pulumi.StringPtrInput
	// Key-name for the tag.
	Key pulumi.StringPtrInput
	// List of possible values an attribute can take.
	Values pulumi.StringArrayInput
}

func (LfTagState) ElementType added in v5.10.0

func (LfTagState) ElementType() reflect.Type

type LookupDataLakeSettingsArgs

type LookupDataLakeSettingsArgs struct {
	// Identifier for the Data Catalog. By default, the account ID.
	CatalogId *string `pulumi:"catalogId"`
}

A collection of arguments for invoking getDataLakeSettings.

type LookupDataLakeSettingsOutputArgs

type LookupDataLakeSettingsOutputArgs struct {
	// Identifier for the Data Catalog. By default, the account ID.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
}

A collection of arguments for invoking getDataLakeSettings.

func (LookupDataLakeSettingsOutputArgs) ElementType

type LookupDataLakeSettingsResult

type LookupDataLakeSettingsResult struct {
	// List of ARNs of AWS Lake Formation principals (IAM users or roles).
	Admins []string `pulumi:"admins"`
	// Whether to allow Amazon EMR clusters to access data managed by Lake Formation.
	AllowExternalDataFiltering bool `pulumi:"allowExternalDataFiltering"`
	// Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it.
	AuthorizedSessionTagValueLists []string `pulumi:"authorizedSessionTagValueLists"`
	CatalogId                      *string  `pulumi:"catalogId"`
	// Up to three configuration blocks of principal permissions for default create database permissions. Detailed below.
	CreateDatabaseDefaultPermissions []GetDataLakeSettingsCreateDatabaseDefaultPermission `pulumi:"createDatabaseDefaultPermissions"`
	// Up to three configuration blocks of principal permissions for default create table permissions. Detailed below.
	CreateTableDefaultPermissions []GetDataLakeSettingsCreateTableDefaultPermission `pulumi:"createTableDefaultPermissions"`
	// A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.
	ExternalDataFilteringAllowLists []string `pulumi:"externalDataFilteringAllowLists"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// List of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs).
	TrustedResourceOwners []string `pulumi:"trustedResourceOwners"`
}

A collection of values returned by getDataLakeSettings.

func LookupDataLakeSettings

func LookupDataLakeSettings(ctx *pulumi.Context, args *LookupDataLakeSettingsArgs, opts ...pulumi.InvokeOption) (*LookupDataLakeSettingsResult, error)

Get Lake Formation principals designated as data lake administrators and lists of principal permission entries for default create database and default create table permissions.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.LookupDataLakeSettings(ctx, &lakeformation.LookupDataLakeSettingsArgs{
			CatalogId: pulumi.StringRef("14916253649"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupDataLakeSettingsResultOutput

type LookupDataLakeSettingsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDataLakeSettings.

func (LookupDataLakeSettingsResultOutput) Admins

List of ARNs of AWS Lake Formation principals (IAM users or roles).

func (LookupDataLakeSettingsResultOutput) AllowExternalDataFiltering added in v5.38.0

func (o LookupDataLakeSettingsResultOutput) AllowExternalDataFiltering() pulumi.BoolOutput

Whether to allow Amazon EMR clusters to access data managed by Lake Formation.

func (LookupDataLakeSettingsResultOutput) AuthorizedSessionTagValueLists added in v5.38.0

func (o LookupDataLakeSettingsResultOutput) AuthorizedSessionTagValueLists() pulumi.StringArrayOutput

Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it.

func (LookupDataLakeSettingsResultOutput) CatalogId

func (LookupDataLakeSettingsResultOutput) CreateDatabaseDefaultPermissions

Up to three configuration blocks of principal permissions for default create database permissions. Detailed below.

func (LookupDataLakeSettingsResultOutput) CreateTableDefaultPermissions

Up to three configuration blocks of principal permissions for default create table permissions. Detailed below.

func (LookupDataLakeSettingsResultOutput) ElementType

func (LookupDataLakeSettingsResultOutput) ExternalDataFilteringAllowLists added in v5.38.0

func (o LookupDataLakeSettingsResultOutput) ExternalDataFilteringAllowLists() pulumi.StringArrayOutput

A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.

func (LookupDataLakeSettingsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupDataLakeSettingsResultOutput) ToLookupDataLakeSettingsResultOutput

func (o LookupDataLakeSettingsResultOutput) ToLookupDataLakeSettingsResultOutput() LookupDataLakeSettingsResultOutput

func (LookupDataLakeSettingsResultOutput) ToLookupDataLakeSettingsResultOutputWithContext

func (o LookupDataLakeSettingsResultOutput) ToLookupDataLakeSettingsResultOutputWithContext(ctx context.Context) LookupDataLakeSettingsResultOutput

func (LookupDataLakeSettingsResultOutput) TrustedResourceOwners

List of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs).

type LookupPermissionsArgs

type LookupPermissionsArgs struct {
	// Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.
	CatalogId *string `pulumi:"catalogId"`
	// Whether the permissions are to be granted for the Data Catalog. Defaults to `false`.
	CatalogResource *bool `pulumi:"catalogResource"`
	// Configuration block for a data location resource. Detailed below.
	DataLocation *GetPermissionsDataLocation `pulumi:"dataLocation"`
	// Configuration block for a database resource. Detailed below.
	Database *GetPermissionsDatabase `pulumi:"database"`
	// Configuration block for an LF-tag resource. Detailed below.
	LfTag *GetPermissionsLfTag `pulumi:"lfTag"`
	// Configuration block for an LF-tag policy resource. Detailed below.
	LfTagPolicy *GetPermissionsLfTagPolicy `pulumi:"lfTagPolicy"`
	// Principal to be granted the permissions on the resource. Supported principals are IAM users or IAM roles.
	//
	// One of the following is required:
	Principal string `pulumi:"principal"`
	// Configuration block for a table resource. Detailed below.
	Table *GetPermissionsTable `pulumi:"table"`
	// Configuration block for a table with columns resource. Detailed below.
	//
	// The following arguments are optional:
	TableWithColumns *GetPermissionsTableWithColumns `pulumi:"tableWithColumns"`
}

A collection of arguments for invoking getPermissions.

type LookupPermissionsOutputArgs

type LookupPermissionsOutputArgs struct {
	// Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// Whether the permissions are to be granted for the Data Catalog. Defaults to `false`.
	CatalogResource pulumi.BoolPtrInput `pulumi:"catalogResource"`
	// Configuration block for a data location resource. Detailed below.
	DataLocation GetPermissionsDataLocationPtrInput `pulumi:"dataLocation"`
	// Configuration block for a database resource. Detailed below.
	Database GetPermissionsDatabasePtrInput `pulumi:"database"`
	// Configuration block for an LF-tag resource. Detailed below.
	LfTag GetPermissionsLfTagPtrInput `pulumi:"lfTag"`
	// Configuration block for an LF-tag policy resource. Detailed below.
	LfTagPolicy GetPermissionsLfTagPolicyPtrInput `pulumi:"lfTagPolicy"`
	// Principal to be granted the permissions on the resource. Supported principals are IAM users or IAM roles.
	//
	// One of the following is required:
	Principal pulumi.StringInput `pulumi:"principal"`
	// Configuration block for a table resource. Detailed below.
	Table GetPermissionsTablePtrInput `pulumi:"table"`
	// Configuration block for a table with columns resource. Detailed below.
	//
	// The following arguments are optional:
	TableWithColumns GetPermissionsTableWithColumnsPtrInput `pulumi:"tableWithColumns"`
}

A collection of arguments for invoking getPermissions.

func (LookupPermissionsOutputArgs) ElementType

type LookupPermissionsResult

type LookupPermissionsResult struct {
	CatalogId       *string                    `pulumi:"catalogId"`
	CatalogResource *bool                      `pulumi:"catalogResource"`
	DataLocation    GetPermissionsDataLocation `pulumi:"dataLocation"`
	Database        GetPermissionsDatabase     `pulumi:"database"`
	// The provider-assigned unique ID for this managed resource.
	Id          string                    `pulumi:"id"`
	LfTag       GetPermissionsLfTag       `pulumi:"lfTag"`
	LfTagPolicy GetPermissionsLfTagPolicy `pulumi:"lfTagPolicy"`
	// List of permissions granted to the principal. For details on permissions, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	Permissions []string `pulumi:"permissions"`
	// Subset of `permissions` which the principal can pass.
	PermissionsWithGrantOptions []string                       `pulumi:"permissionsWithGrantOptions"`
	Principal                   string                         `pulumi:"principal"`
	Table                       GetPermissionsTable            `pulumi:"table"`
	TableWithColumns            GetPermissionsTableWithColumns `pulumi:"tableWithColumns"`
}

A collection of values returned by getPermissions.

func LookupPermissions

func LookupPermissions(ctx *pulumi.Context, args *LookupPermissionsArgs, opts ...pulumi.InvokeOption) (*LookupPermissionsResult, error)

Get permissions for a principal to access metadata in the Data Catalog and data organized in underlying data storage such as Amazon S3. Permissions are granted to a principal, in a Data Catalog, relative to a Lake Formation resource, which includes the Data Catalog, databases, tables, LF-tags, and LF-tag policies. For more information, see [Security and Access Control to Metadata and Data in Lake Formation](https://docs.aws.amazon.com/lake-formation/latest/dg/security-data-access.html).

> **NOTE:** This data source deals with explicitly granted permissions. Lake Formation grants implicit permissions to data lake administrators, database creators, and table creators. For more information, see [Implicit Lake Formation Permissions](https://docs.aws.amazon.com/lake-formation/latest/dg/implicit-permissions.html).

## Example Usage ### Permissions For A Lake Formation S3 Resource

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.LookupPermissions(ctx, &lakeformation.LookupPermissionsArgs{
			Principal: aws_iam_role.Workflow_role.Arn,
			DataLocation: lakeformation.GetPermissionsDataLocation{
				Arn: aws_lakeformation_resource.Test.Arn,
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Permissions For A Glue Catalog Database

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.LookupPermissions(ctx, &lakeformation.LookupPermissionsArgs{
			Principal: aws_iam_role.Workflow_role.Arn,
			Database: lakeformation.GetPermissionsDatabase{
				Name:      aws_glue_catalog_database.Test.Name,
				CatalogId: "110376042874",
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Permissions For Tag-Based Access Control

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.LookupPermissions(ctx, &lakeformation.LookupPermissionsArgs{
			Principal: aws_iam_role.Workflow_role.Arn,
			LfTagPolicy: lakeformation.GetPermissionsLfTagPolicy{
				ResourceType: "DATABASE",
				Expressions: []lakeformation.GetPermissionsLfTagPolicyExpression{
					{
						Key: "Team",
						Values: []string{
							"Sales",
						},
					},
					{
						Key: "Environment",
						Values: []string{
							"Dev",
							"Production",
						},
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupPermissionsResultOutput

type LookupPermissionsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getPermissions.

func (LookupPermissionsResultOutput) CatalogId

func (LookupPermissionsResultOutput) CatalogResource

func (LookupPermissionsResultOutput) DataLocation

func (LookupPermissionsResultOutput) Database

func (LookupPermissionsResultOutput) ElementType

func (LookupPermissionsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupPermissionsResultOutput) LfTag added in v5.10.0

func (LookupPermissionsResultOutput) LfTagPolicy added in v5.10.0

func (LookupPermissionsResultOutput) Permissions

List of permissions granted to the principal. For details on permissions, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).

func (LookupPermissionsResultOutput) PermissionsWithGrantOptions

func (o LookupPermissionsResultOutput) PermissionsWithGrantOptions() pulumi.StringArrayOutput

Subset of `permissions` which the principal can pass.

func (LookupPermissionsResultOutput) Principal

func (LookupPermissionsResultOutput) Table

func (LookupPermissionsResultOutput) TableWithColumns

func (LookupPermissionsResultOutput) ToLookupPermissionsResultOutput

func (o LookupPermissionsResultOutput) ToLookupPermissionsResultOutput() LookupPermissionsResultOutput

func (LookupPermissionsResultOutput) ToLookupPermissionsResultOutputWithContext

func (o LookupPermissionsResultOutput) ToLookupPermissionsResultOutputWithContext(ctx context.Context) LookupPermissionsResultOutput

type LookupResourceArgs

type LookupResourceArgs struct {
	// ARN of the resource, an S3 path.
	Arn string `pulumi:"arn"`
}

A collection of arguments for invoking getResource.

type LookupResourceOutputArgs

type LookupResourceOutputArgs struct {
	// ARN of the resource, an S3 path.
	Arn pulumi.StringInput `pulumi:"arn"`
}

A collection of arguments for invoking getResource.

func (LookupResourceOutputArgs) ElementType

func (LookupResourceOutputArgs) ElementType() reflect.Type

type LookupResourceResult

type LookupResourceResult struct {
	Arn string `pulumi:"arn"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Date and time the resource was last modified in [RFC 3339 format](https://tools.ietf.org/html/rfc3339#section-5.8).
	LastModified string `pulumi:"lastModified"`
	// Role that the resource was registered with.
	RoleArn string `pulumi:"roleArn"`
}

A collection of values returned by getResource.

func LookupResource

func LookupResource(ctx *pulumi.Context, args *LookupResourceArgs, opts ...pulumi.InvokeOption) (*LookupResourceResult, error)

Provides details about a Lake Formation resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.LookupResource(ctx, &lakeformation.LookupResourceArgs{
			Arn: "arn:aws:s3:::tf-acc-test-9151654063908211878",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupResourceResultOutput

type LookupResourceResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResource.

func (LookupResourceResultOutput) Arn

func (LookupResourceResultOutput) ElementType

func (LookupResourceResultOutput) ElementType() reflect.Type

func (LookupResourceResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResourceResultOutput) LastModified

Date and time the resource was last modified in [RFC 3339 format](https://tools.ietf.org/html/rfc3339#section-5.8).

func (LookupResourceResultOutput) RoleArn

Role that the resource was registered with.

func (LookupResourceResultOutput) ToLookupResourceResultOutput

func (o LookupResourceResultOutput) ToLookupResourceResultOutput() LookupResourceResultOutput

func (LookupResourceResultOutput) ToLookupResourceResultOutputWithContext

func (o LookupResourceResultOutput) ToLookupResourceResultOutputWithContext(ctx context.Context) LookupResourceResultOutput

type Permissions

type Permissions struct {
	pulumi.CustomResourceState

	// Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.
	CatalogId pulumi.StringPtrOutput `pulumi:"catalogId"`
	// Whether the permissions are to be granted for the Data Catalog. Defaults to `false`.
	CatalogResource pulumi.BoolPtrOutput `pulumi:"catalogResource"`
	// Configuration block for a data location resource. Detailed below.
	DataLocation PermissionsDataLocationOutput `pulumi:"dataLocation"`
	// Configuration block for a database resource. Detailed below.
	Database PermissionsDatabaseOutput `pulumi:"database"`
	// Configuration block for an LF-tag resource. Detailed below.
	LfTag PermissionsLfTagOutput `pulumi:"lfTag"`
	// Configuration block for an LF-tag policy resource. Detailed below.
	LfTagPolicy PermissionsLfTagPolicyOutput `pulumi:"lfTagPolicy"`
	// List of permissions granted to the principal. Valid values may include `ALL`, `ALTER`, `ASSOCIATE`, `CREATE_DATABASE`, `CREATE_TABLE`, `DATA_LOCATION_ACCESS`, `DELETE`, `DESCRIBE`, `DROP`, `INSERT`, and `SELECT`. For details on each permission, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	Permissions pulumi.StringArrayOutput `pulumi:"permissions"`
	// Subset of `permissions` which the principal can pass.
	PermissionsWithGrantOptions pulumi.StringArrayOutput `pulumi:"permissionsWithGrantOptions"`
	// Principal to be granted the permissions on the resource. Supported principals include `IAM_ALLOWED_PRINCIPALS` (see Default Behavior and `IAMAllowedPrincipals` above), IAM roles, users, groups, SAML groups and users, QuickSight groups, OUs, and organizations as well as AWS account IDs for cross-account permissions. For more information, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	//
	// > **NOTE:** We highly recommend that the `principal` _NOT_ be a Lake Formation administrator (granted using `lakeformation.DataLakeSettings`). The entity (e.g., IAM role) running the deployment will most likely need to be a Lake Formation administrator. As such, the entity will have implicit permissions and does not need permissions granted through this resource.
	//
	// One of the following is required:
	Principal pulumi.StringOutput `pulumi:"principal"`
	// Configuration block for a table resource. Detailed below.
	Table PermissionsTableOutput `pulumi:"table"`
	// Configuration block for a table with columns resource. Detailed below.
	//
	// The following arguments are optional:
	TableWithColumns PermissionsTableWithColumnsOutput `pulumi:"tableWithColumns"`
}

Grants permissions to the principal to access metadata in the Data Catalog and data organized in underlying data storage such as Amazon S3. Permissions are granted to a principal, in a Data Catalog, relative to a Lake Formation resource, which includes the Data Catalog, databases, tables, LF-tags, and LF-tag policies. For more information, see [Security and Access Control to Metadata and Data in Lake Formation](https://docs.aws.amazon.com/lake-formation/latest/dg/security-data-access.html).

!> **WARNING:** Lake Formation permissions are not in effect by default within AWS. Using this resource will not secure your data and will result in errors if you do not change the security settings for existing resources and the default security settings for new resources. See Default Behavior and `IAMAllowedPrincipals` for additional details.

> **NOTE:** In general, the `principal` should _NOT_ be a Lake Formation administrator or the entity (e.g., IAM role) that is running the deployment. Administrators have implicit permissions. These should be managed by granting or not granting administrator rights using `lakeformation.DataLakeSettings`, _not_ with this resource.

## Default Behavior and `IAMAllowedPrincipals`

**_Lake Formation permissions are not in effect by default within AWS._** `IAMAllowedPrincipals` (i.e., `IAM_ALLOWED_PRINCIPALS`) conflicts with individual Lake Formation permissions (i.e., non-`IAMAllowedPrincipals` permissions), will cause unexpected behavior, and may result in errors.

When using Lake Formation, choose ONE of the following options as they are mutually exclusive:

1. Use this resource (`lakeformation.Permissions`), change the default security settings using `lakeformation.DataLakeSettings`, and remove existing `IAMAllowedPrincipals` permissions 2. Use `IAMAllowedPrincipals` without `lakeformation.Permissions`

This example shows removing the `IAMAllowedPrincipals` default security settings and making the caller a Lake Formation admin. Since `createDatabaseDefaultPermissions` and `createTableDefaultPermissions` are not set in the `lakeformation.DataLakeSettings` resource, they are cleared.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/iam"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		currentCallerIdentity, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		currentSessionContext, err := iam.GetSessionContext(ctx, &iam.GetSessionContextArgs{
			Arn: currentCallerIdentity.Arn,
		}, nil)
		if err != nil {
			return err
		}
		_, err = lakeformation.NewDataLakeSettings(ctx, "test", &lakeformation.DataLakeSettingsArgs{
			Admins: pulumi.StringArray{
				*pulumi.String(currentSessionContext.IssuerArn),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

To remove existing `IAMAllowedPrincipals` permissions, use the [AWS Lake Formation Console](https://console.aws.amazon.com/lakeformation/) or [AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/lakeformation/batch-revoke-permissions.html).

`IAMAllowedPrincipals` is a hook to maintain backwards compatibility with AWS Glue. `IAMAllowedPrincipals` is a pseudo-entity group that acts like a Lake Formation principal. The group includes any IAM users and roles that are allowed access to your Data Catalog resources by your IAM policies.

This is Lake Formation's default behavior:

* Lake Formation grants `Super` permission to `IAMAllowedPrincipals` on all existing AWS Glue Data Catalog resources. * Lake Formation enables "Use only IAM access control" for new Data Catalog resources.

For more details, see [Changing the Default Security Settings for Your Data Lake](https://docs.aws.amazon.com/lake-formation/latest/dg/change-settings.html).

### Problem Using `IAMAllowedPrincipals`

AWS does not support combining `IAMAllowedPrincipals` permissions and non-`IAMAllowedPrincipals` permissions. Doing so results in unexpected permissions and behaviors. For example, this configuration grants a user `SELECT` on a column in a table.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/glue"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := glue.NewCatalogDatabase(ctx, "exampleCatalogDatabase", &glue.CatalogDatabaseArgs{
			Name: pulumi.String("sadabate"),
		})
		if err != nil {
			return err
		}
		exampleCatalogTable, err := glue.NewCatalogTable(ctx, "exampleCatalogTable", &glue.CatalogTableArgs{
			Name:         pulumi.String("abelt"),
			DatabaseName: pulumi.Any(aws_glue_catalog_database.Test.Name),
			StorageDescriptor: &glue.CatalogTableStorageDescriptorArgs{
				Columns: glue.CatalogTableStorageDescriptorColumnArray{
					&glue.CatalogTableStorageDescriptorColumnArgs{
						Name: pulumi.String("event"),
						Type: pulumi.String("string"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = lakeformation.NewPermissions(ctx, "examplePermissions", &lakeformation.PermissionsArgs{
			Permissions: pulumi.StringArray{
				pulumi.String("SELECT"),
			},
			Principal: pulumi.String("arn:aws:iam:us-east-1:123456789012:user/SanHolo"),
			TableWithColumns: &lakeformation.PermissionsTableWithColumnsArgs{
				DatabaseName: exampleCatalogTable.DatabaseName,
				Name:         exampleCatalogTable.Name,
				ColumnNames: pulumi.StringArray{
					pulumi.String("event"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

The resulting permissions depend on whether the table had `IAMAllowedPrincipals` (IAP) permissions or not.

| Result With IAP | Result Without IAP | | ---- | ---- | | `SELECT` column wildcard (i.e., all columns) | `SELECT` on `"event"` (as expected) |

## Using Lake Formation Permissions

Lake Formation grants implicit permissions to data lake administrators, database creators, and table creators. These implicit permissions cannot be revoked _per se_. If this resource reads implicit permissions, it will attempt to revoke them, which causes an error when the resource is destroyed.

There are two ways to avoid these errors. First, and the way we recommend, is to avoid using this resource with principals that have implicit permissions. A second, error-prone option, is to grant explicit permissions (and `permissionsWithGrantOption`) to "overwrite" a principal's implicit permissions, which you can then revoke with this resource. For more information, see [Implicit Lake Formation Permissions](https://docs.aws.amazon.com/lake-formation/latest/dg/implicit-permissions.html).

If the `principal` is also a data lake administrator, AWS grants implicit permissions that can cause errors using this resource. For example, AWS implicitly grants a `principal`/administrator `permissions` and `permissionsWithGrantOption` of `ALL`, `ALTER`, `DELETE`, `DESCRIBE`, `DROP`, `INSERT`, and `SELECT` on a table. If you use this resource to explicitly grant the `principal`/administrator `permissions` but _not_ `permissionsWithGrantOption` of `ALL`, `ALTER`, `DELETE`, `DESCRIBE`, `DROP`, `INSERT`, and `SELECT` on the table, this resource will read the implicit `permissionsWithGrantOption` and attempt to revoke them when the resource is destroyed. Doing so will cause an `InvalidInputException: No permissions revoked` error because you cannot revoke implicit permissions _per se_. To workaround this problem, explicitly grant the `principal`/administrator `permissions` _and_ `permissionsWithGrantOption`, which can then be revoked. Similarly, granting a `principal`/administrator permissions on a table with columns and providing `columnNames`, will result in a `InvalidInputException: Permissions modification is invalid` error because you are narrowing the implicit permissions. Instead, set `wildcard` to `true` and remove the `columnNames`.

## Example Usage ### Grant Permissions For A Lake Formation S3 Resource

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.NewPermissions(ctx, "example", &lakeformation.PermissionsArgs{
			Principal: pulumi.Any(aws_iam_role.Workflow_role.Arn),
			Permissions: pulumi.StringArray{
				pulumi.String("ALL"),
			},
			DataLocation: &lakeformation.PermissionsDataLocationArgs{
				Arn: pulumi.Any(aws_lakeformation_resource.Example.Arn),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Grant Permissions For A Glue Catalog Database

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.NewPermissions(ctx, "example", &lakeformation.PermissionsArgs{
			Principal: pulumi.Any(aws_iam_role.Workflow_role.Arn),
			Permissions: pulumi.StringArray{
				pulumi.String("CREATE_TABLE"),
				pulumi.String("ALTER"),
				pulumi.String("DROP"),
			},
			Database: &lakeformation.PermissionsDatabaseArgs{
				Name:      pulumi.Any(aws_glue_catalog_database.Example.Name),
				CatalogId: pulumi.String("110376042874"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Grant Permissions Using Tag-Based Access Control

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.NewPermissions(ctx, "test", &lakeformation.PermissionsArgs{
			Principal: pulumi.Any(aws_iam_role.Sales_role.Arn),
			Permissions: pulumi.StringArray{
				pulumi.String("CREATE_TABLE"),
				pulumi.String("ALTER"),
				pulumi.String("DROP"),
			},
			LfTagPolicy: &lakeformation.PermissionsLfTagPolicyArgs{
				ResourceType: pulumi.String("DATABASE"),
				Expressions: lakeformation.PermissionsLfTagPolicyExpressionArray{
					&lakeformation.PermissionsLfTagPolicyExpressionArgs{
						Key: pulumi.String("Team"),
						Values: pulumi.StringArray{
							pulumi.String("Sales"),
						},
					},
					&lakeformation.PermissionsLfTagPolicyExpressionArgs{
						Key: pulumi.String("Environment"),
						Values: pulumi.StringArray{
							pulumi.String("Dev"),
							pulumi.String("Production"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetPermissions

func GetPermissions(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PermissionsState, opts ...pulumi.ResourceOption) (*Permissions, error)

GetPermissions gets an existing Permissions resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPermissions

func NewPermissions(ctx *pulumi.Context,
	name string, args *PermissionsArgs, opts ...pulumi.ResourceOption) (*Permissions, error)

NewPermissions registers a new resource with the given unique name, arguments, and options.

func (*Permissions) ElementType

func (*Permissions) ElementType() reflect.Type

func (*Permissions) ToPermissionsOutput

func (i *Permissions) ToPermissionsOutput() PermissionsOutput

func (*Permissions) ToPermissionsOutputWithContext

func (i *Permissions) ToPermissionsOutputWithContext(ctx context.Context) PermissionsOutput

type PermissionsArgs

type PermissionsArgs struct {
	// Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.
	CatalogId pulumi.StringPtrInput
	// Whether the permissions are to be granted for the Data Catalog. Defaults to `false`.
	CatalogResource pulumi.BoolPtrInput
	// Configuration block for a data location resource. Detailed below.
	DataLocation PermissionsDataLocationPtrInput
	// Configuration block for a database resource. Detailed below.
	Database PermissionsDatabasePtrInput
	// Configuration block for an LF-tag resource. Detailed below.
	LfTag PermissionsLfTagPtrInput
	// Configuration block for an LF-tag policy resource. Detailed below.
	LfTagPolicy PermissionsLfTagPolicyPtrInput
	// List of permissions granted to the principal. Valid values may include `ALL`, `ALTER`, `ASSOCIATE`, `CREATE_DATABASE`, `CREATE_TABLE`, `DATA_LOCATION_ACCESS`, `DELETE`, `DESCRIBE`, `DROP`, `INSERT`, and `SELECT`. For details on each permission, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	Permissions pulumi.StringArrayInput
	// Subset of `permissions` which the principal can pass.
	PermissionsWithGrantOptions pulumi.StringArrayInput
	// Principal to be granted the permissions on the resource. Supported principals include `IAM_ALLOWED_PRINCIPALS` (see Default Behavior and `IAMAllowedPrincipals` above), IAM roles, users, groups, SAML groups and users, QuickSight groups, OUs, and organizations as well as AWS account IDs for cross-account permissions. For more information, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	//
	// > **NOTE:** We highly recommend that the `principal` _NOT_ be a Lake Formation administrator (granted using `lakeformation.DataLakeSettings`). The entity (e.g., IAM role) running the deployment will most likely need to be a Lake Formation administrator. As such, the entity will have implicit permissions and does not need permissions granted through this resource.
	//
	// One of the following is required:
	Principal pulumi.StringInput
	// Configuration block for a table resource. Detailed below.
	Table PermissionsTablePtrInput
	// Configuration block for a table with columns resource. Detailed below.
	//
	// The following arguments are optional:
	TableWithColumns PermissionsTableWithColumnsPtrInput
}

The set of arguments for constructing a Permissions resource.

func (PermissionsArgs) ElementType

func (PermissionsArgs) ElementType() reflect.Type

type PermissionsArray

type PermissionsArray []PermissionsInput

func (PermissionsArray) ElementType

func (PermissionsArray) ElementType() reflect.Type

func (PermissionsArray) ToPermissionsArrayOutput

func (i PermissionsArray) ToPermissionsArrayOutput() PermissionsArrayOutput

func (PermissionsArray) ToPermissionsArrayOutputWithContext

func (i PermissionsArray) ToPermissionsArrayOutputWithContext(ctx context.Context) PermissionsArrayOutput

type PermissionsArrayInput

type PermissionsArrayInput interface {
	pulumi.Input

	ToPermissionsArrayOutput() PermissionsArrayOutput
	ToPermissionsArrayOutputWithContext(context.Context) PermissionsArrayOutput
}

PermissionsArrayInput is an input type that accepts PermissionsArray and PermissionsArrayOutput values. You can construct a concrete instance of `PermissionsArrayInput` via:

PermissionsArray{ PermissionsArgs{...} }

type PermissionsArrayOutput

type PermissionsArrayOutput struct{ *pulumi.OutputState }

func (PermissionsArrayOutput) ElementType

func (PermissionsArrayOutput) ElementType() reflect.Type

func (PermissionsArrayOutput) Index

func (PermissionsArrayOutput) ToPermissionsArrayOutput

func (o PermissionsArrayOutput) ToPermissionsArrayOutput() PermissionsArrayOutput

func (PermissionsArrayOutput) ToPermissionsArrayOutputWithContext

func (o PermissionsArrayOutput) ToPermissionsArrayOutputWithContext(ctx context.Context) PermissionsArrayOutput

type PermissionsDataLocation

type PermissionsDataLocation struct {
	// Amazon Resource Name (ARN) that uniquely identifies the data location resource.
	//
	// The following argument is optional:
	Arn string `pulumi:"arn"`
	// Identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
}

type PermissionsDataLocationArgs

type PermissionsDataLocationArgs struct {
	// Amazon Resource Name (ARN) that uniquely identifies the data location resource.
	//
	// The following argument is optional:
	Arn pulumi.StringInput `pulumi:"arn"`
	// Identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
}

func (PermissionsDataLocationArgs) ElementType

func (PermissionsDataLocationArgs) ToPermissionsDataLocationOutput

func (i PermissionsDataLocationArgs) ToPermissionsDataLocationOutput() PermissionsDataLocationOutput

func (PermissionsDataLocationArgs) ToPermissionsDataLocationOutputWithContext

func (i PermissionsDataLocationArgs) ToPermissionsDataLocationOutputWithContext(ctx context.Context) PermissionsDataLocationOutput

func (PermissionsDataLocationArgs) ToPermissionsDataLocationPtrOutput

func (i PermissionsDataLocationArgs) ToPermissionsDataLocationPtrOutput() PermissionsDataLocationPtrOutput

func (PermissionsDataLocationArgs) ToPermissionsDataLocationPtrOutputWithContext

func (i PermissionsDataLocationArgs) ToPermissionsDataLocationPtrOutputWithContext(ctx context.Context) PermissionsDataLocationPtrOutput

type PermissionsDataLocationInput

type PermissionsDataLocationInput interface {
	pulumi.Input

	ToPermissionsDataLocationOutput() PermissionsDataLocationOutput
	ToPermissionsDataLocationOutputWithContext(context.Context) PermissionsDataLocationOutput
}

PermissionsDataLocationInput is an input type that accepts PermissionsDataLocationArgs and PermissionsDataLocationOutput values. You can construct a concrete instance of `PermissionsDataLocationInput` via:

PermissionsDataLocationArgs{...}

type PermissionsDataLocationOutput

type PermissionsDataLocationOutput struct{ *pulumi.OutputState }

func (PermissionsDataLocationOutput) Arn

Amazon Resource Name (ARN) that uniquely identifies the data location resource.

The following argument is optional:

func (PermissionsDataLocationOutput) CatalogId

Identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.

func (PermissionsDataLocationOutput) ElementType

func (PermissionsDataLocationOutput) ToPermissionsDataLocationOutput

func (o PermissionsDataLocationOutput) ToPermissionsDataLocationOutput() PermissionsDataLocationOutput

func (PermissionsDataLocationOutput) ToPermissionsDataLocationOutputWithContext

func (o PermissionsDataLocationOutput) ToPermissionsDataLocationOutputWithContext(ctx context.Context) PermissionsDataLocationOutput

func (PermissionsDataLocationOutput) ToPermissionsDataLocationPtrOutput

func (o PermissionsDataLocationOutput) ToPermissionsDataLocationPtrOutput() PermissionsDataLocationPtrOutput

func (PermissionsDataLocationOutput) ToPermissionsDataLocationPtrOutputWithContext

func (o PermissionsDataLocationOutput) ToPermissionsDataLocationPtrOutputWithContext(ctx context.Context) PermissionsDataLocationPtrOutput

type PermissionsDataLocationPtrInput

type PermissionsDataLocationPtrInput interface {
	pulumi.Input

	ToPermissionsDataLocationPtrOutput() PermissionsDataLocationPtrOutput
	ToPermissionsDataLocationPtrOutputWithContext(context.Context) PermissionsDataLocationPtrOutput
}

PermissionsDataLocationPtrInput is an input type that accepts PermissionsDataLocationArgs, PermissionsDataLocationPtr and PermissionsDataLocationPtrOutput values. You can construct a concrete instance of `PermissionsDataLocationPtrInput` via:

        PermissionsDataLocationArgs{...}

or:

        nil

type PermissionsDataLocationPtrOutput

type PermissionsDataLocationPtrOutput struct{ *pulumi.OutputState }

func (PermissionsDataLocationPtrOutput) Arn

Amazon Resource Name (ARN) that uniquely identifies the data location resource.

The following argument is optional:

func (PermissionsDataLocationPtrOutput) CatalogId

Identifier for the Data Catalog where the location is registered with Lake Formation. By default, it is the account ID of the caller.

func (PermissionsDataLocationPtrOutput) Elem

func (PermissionsDataLocationPtrOutput) ElementType

func (PermissionsDataLocationPtrOutput) ToPermissionsDataLocationPtrOutput

func (o PermissionsDataLocationPtrOutput) ToPermissionsDataLocationPtrOutput() PermissionsDataLocationPtrOutput

func (PermissionsDataLocationPtrOutput) ToPermissionsDataLocationPtrOutputWithContext

func (o PermissionsDataLocationPtrOutput) ToPermissionsDataLocationPtrOutputWithContext(ctx context.Context) PermissionsDataLocationPtrOutput

type PermissionsDatabase

type PermissionsDatabase struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// Name of the database resource. Unique to the Data Catalog.
	//
	// The following argument is optional:
	Name string `pulumi:"name"`
}

type PermissionsDatabaseArgs

type PermissionsDatabaseArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// Name of the database resource. Unique to the Data Catalog.
	//
	// The following argument is optional:
	Name pulumi.StringInput `pulumi:"name"`
}

func (PermissionsDatabaseArgs) ElementType

func (PermissionsDatabaseArgs) ElementType() reflect.Type

func (PermissionsDatabaseArgs) ToPermissionsDatabaseOutput

func (i PermissionsDatabaseArgs) ToPermissionsDatabaseOutput() PermissionsDatabaseOutput

func (PermissionsDatabaseArgs) ToPermissionsDatabaseOutputWithContext

func (i PermissionsDatabaseArgs) ToPermissionsDatabaseOutputWithContext(ctx context.Context) PermissionsDatabaseOutput

func (PermissionsDatabaseArgs) ToPermissionsDatabasePtrOutput

func (i PermissionsDatabaseArgs) ToPermissionsDatabasePtrOutput() PermissionsDatabasePtrOutput

func (PermissionsDatabaseArgs) ToPermissionsDatabasePtrOutputWithContext

func (i PermissionsDatabaseArgs) ToPermissionsDatabasePtrOutputWithContext(ctx context.Context) PermissionsDatabasePtrOutput

type PermissionsDatabaseInput

type PermissionsDatabaseInput interface {
	pulumi.Input

	ToPermissionsDatabaseOutput() PermissionsDatabaseOutput
	ToPermissionsDatabaseOutputWithContext(context.Context) PermissionsDatabaseOutput
}

PermissionsDatabaseInput is an input type that accepts PermissionsDatabaseArgs and PermissionsDatabaseOutput values. You can construct a concrete instance of `PermissionsDatabaseInput` via:

PermissionsDatabaseArgs{...}

type PermissionsDatabaseOutput

type PermissionsDatabaseOutput struct{ *pulumi.OutputState }

func (PermissionsDatabaseOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsDatabaseOutput) ElementType

func (PermissionsDatabaseOutput) ElementType() reflect.Type

func (PermissionsDatabaseOutput) Name

Name of the database resource. Unique to the Data Catalog.

The following argument is optional:

func (PermissionsDatabaseOutput) ToPermissionsDatabaseOutput

func (o PermissionsDatabaseOutput) ToPermissionsDatabaseOutput() PermissionsDatabaseOutput

func (PermissionsDatabaseOutput) ToPermissionsDatabaseOutputWithContext

func (o PermissionsDatabaseOutput) ToPermissionsDatabaseOutputWithContext(ctx context.Context) PermissionsDatabaseOutput

func (PermissionsDatabaseOutput) ToPermissionsDatabasePtrOutput

func (o PermissionsDatabaseOutput) ToPermissionsDatabasePtrOutput() PermissionsDatabasePtrOutput

func (PermissionsDatabaseOutput) ToPermissionsDatabasePtrOutputWithContext

func (o PermissionsDatabaseOutput) ToPermissionsDatabasePtrOutputWithContext(ctx context.Context) PermissionsDatabasePtrOutput

type PermissionsDatabasePtrInput

type PermissionsDatabasePtrInput interface {
	pulumi.Input

	ToPermissionsDatabasePtrOutput() PermissionsDatabasePtrOutput
	ToPermissionsDatabasePtrOutputWithContext(context.Context) PermissionsDatabasePtrOutput
}

PermissionsDatabasePtrInput is an input type that accepts PermissionsDatabaseArgs, PermissionsDatabasePtr and PermissionsDatabasePtrOutput values. You can construct a concrete instance of `PermissionsDatabasePtrInput` via:

        PermissionsDatabaseArgs{...}

or:

        nil

type PermissionsDatabasePtrOutput

type PermissionsDatabasePtrOutput struct{ *pulumi.OutputState }

func (PermissionsDatabasePtrOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsDatabasePtrOutput) Elem

func (PermissionsDatabasePtrOutput) ElementType

func (PermissionsDatabasePtrOutput) Name

Name of the database resource. Unique to the Data Catalog.

The following argument is optional:

func (PermissionsDatabasePtrOutput) ToPermissionsDatabasePtrOutput

func (o PermissionsDatabasePtrOutput) ToPermissionsDatabasePtrOutput() PermissionsDatabasePtrOutput

func (PermissionsDatabasePtrOutput) ToPermissionsDatabasePtrOutputWithContext

func (o PermissionsDatabasePtrOutput) ToPermissionsDatabasePtrOutputWithContext(ctx context.Context) PermissionsDatabasePtrOutput

type PermissionsInput

type PermissionsInput interface {
	pulumi.Input

	ToPermissionsOutput() PermissionsOutput
	ToPermissionsOutputWithContext(ctx context.Context) PermissionsOutput
}

type PermissionsLfTag added in v5.10.0

type PermissionsLfTag struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// The key-name for the tag.
	Key string `pulumi:"key"`
	// A list of possible values an attribute can take.
	//
	// The following argument is optional:
	Values []string `pulumi:"values"`
}

type PermissionsLfTagArgs added in v5.10.0

type PermissionsLfTagArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// The key-name for the tag.
	Key pulumi.StringInput `pulumi:"key"`
	// A list of possible values an attribute can take.
	//
	// The following argument is optional:
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (PermissionsLfTagArgs) ElementType added in v5.10.0

func (PermissionsLfTagArgs) ElementType() reflect.Type

func (PermissionsLfTagArgs) ToPermissionsLfTagOutput added in v5.10.0

func (i PermissionsLfTagArgs) ToPermissionsLfTagOutput() PermissionsLfTagOutput

func (PermissionsLfTagArgs) ToPermissionsLfTagOutputWithContext added in v5.10.0

func (i PermissionsLfTagArgs) ToPermissionsLfTagOutputWithContext(ctx context.Context) PermissionsLfTagOutput

func (PermissionsLfTagArgs) ToPermissionsLfTagPtrOutput added in v5.10.0

func (i PermissionsLfTagArgs) ToPermissionsLfTagPtrOutput() PermissionsLfTagPtrOutput

func (PermissionsLfTagArgs) ToPermissionsLfTagPtrOutputWithContext added in v5.10.0

func (i PermissionsLfTagArgs) ToPermissionsLfTagPtrOutputWithContext(ctx context.Context) PermissionsLfTagPtrOutput

type PermissionsLfTagInput added in v5.10.0

type PermissionsLfTagInput interface {
	pulumi.Input

	ToPermissionsLfTagOutput() PermissionsLfTagOutput
	ToPermissionsLfTagOutputWithContext(context.Context) PermissionsLfTagOutput
}

PermissionsLfTagInput is an input type that accepts PermissionsLfTagArgs and PermissionsLfTagOutput values. You can construct a concrete instance of `PermissionsLfTagInput` via:

PermissionsLfTagArgs{...}

type PermissionsLfTagOutput added in v5.10.0

type PermissionsLfTagOutput struct{ *pulumi.OutputState }

func (PermissionsLfTagOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsLfTagOutput) ElementType added in v5.10.0

func (PermissionsLfTagOutput) ElementType() reflect.Type

func (PermissionsLfTagOutput) Key added in v5.10.0

The key-name for the tag.

func (PermissionsLfTagOutput) ToPermissionsLfTagOutput added in v5.10.0

func (o PermissionsLfTagOutput) ToPermissionsLfTagOutput() PermissionsLfTagOutput

func (PermissionsLfTagOutput) ToPermissionsLfTagOutputWithContext added in v5.10.0

func (o PermissionsLfTagOutput) ToPermissionsLfTagOutputWithContext(ctx context.Context) PermissionsLfTagOutput

func (PermissionsLfTagOutput) ToPermissionsLfTagPtrOutput added in v5.10.0

func (o PermissionsLfTagOutput) ToPermissionsLfTagPtrOutput() PermissionsLfTagPtrOutput

func (PermissionsLfTagOutput) ToPermissionsLfTagPtrOutputWithContext added in v5.10.0

func (o PermissionsLfTagOutput) ToPermissionsLfTagPtrOutputWithContext(ctx context.Context) PermissionsLfTagPtrOutput

func (PermissionsLfTagOutput) Values added in v5.10.0

A list of possible values an attribute can take.

The following argument is optional:

type PermissionsLfTagPolicy added in v5.10.0

type PermissionsLfTagPolicy struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// A list of tag conditions that apply to the resource's tag policy. Configuration block for tag conditions that apply to the policy. See `expression` below.
	//
	// The following argument is optional:
	Expressions []PermissionsLfTagPolicyExpression `pulumi:"expressions"`
	// The resource type for which the tag policy applies. Valid values are `DATABASE` and `TABLE`.
	ResourceType string `pulumi:"resourceType"`
}

type PermissionsLfTagPolicyArgs added in v5.10.0

type PermissionsLfTagPolicyArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// A list of tag conditions that apply to the resource's tag policy. Configuration block for tag conditions that apply to the policy. See `expression` below.
	//
	// The following argument is optional:
	Expressions PermissionsLfTagPolicyExpressionArrayInput `pulumi:"expressions"`
	// The resource type for which the tag policy applies. Valid values are `DATABASE` and `TABLE`.
	ResourceType pulumi.StringInput `pulumi:"resourceType"`
}

func (PermissionsLfTagPolicyArgs) ElementType added in v5.10.0

func (PermissionsLfTagPolicyArgs) ElementType() reflect.Type

func (PermissionsLfTagPolicyArgs) ToPermissionsLfTagPolicyOutput added in v5.10.0

func (i PermissionsLfTagPolicyArgs) ToPermissionsLfTagPolicyOutput() PermissionsLfTagPolicyOutput

func (PermissionsLfTagPolicyArgs) ToPermissionsLfTagPolicyOutputWithContext added in v5.10.0

func (i PermissionsLfTagPolicyArgs) ToPermissionsLfTagPolicyOutputWithContext(ctx context.Context) PermissionsLfTagPolicyOutput

func (PermissionsLfTagPolicyArgs) ToPermissionsLfTagPolicyPtrOutput added in v5.10.0

func (i PermissionsLfTagPolicyArgs) ToPermissionsLfTagPolicyPtrOutput() PermissionsLfTagPolicyPtrOutput

func (PermissionsLfTagPolicyArgs) ToPermissionsLfTagPolicyPtrOutputWithContext added in v5.10.0

func (i PermissionsLfTagPolicyArgs) ToPermissionsLfTagPolicyPtrOutputWithContext(ctx context.Context) PermissionsLfTagPolicyPtrOutput

type PermissionsLfTagPolicyExpression added in v5.10.0

type PermissionsLfTagPolicyExpression struct {
	// The key-name of an LF-Tag.
	Key string `pulumi:"key"`
	// A list of possible values of an LF-Tag.
	Values []string `pulumi:"values"`
}

type PermissionsLfTagPolicyExpressionArgs added in v5.10.0

type PermissionsLfTagPolicyExpressionArgs struct {
	// The key-name of an LF-Tag.
	Key pulumi.StringInput `pulumi:"key"`
	// A list of possible values of an LF-Tag.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (PermissionsLfTagPolicyExpressionArgs) ElementType added in v5.10.0

func (PermissionsLfTagPolicyExpressionArgs) ToPermissionsLfTagPolicyExpressionOutput added in v5.10.0

func (i PermissionsLfTagPolicyExpressionArgs) ToPermissionsLfTagPolicyExpressionOutput() PermissionsLfTagPolicyExpressionOutput

func (PermissionsLfTagPolicyExpressionArgs) ToPermissionsLfTagPolicyExpressionOutputWithContext added in v5.10.0

func (i PermissionsLfTagPolicyExpressionArgs) ToPermissionsLfTagPolicyExpressionOutputWithContext(ctx context.Context) PermissionsLfTagPolicyExpressionOutput

type PermissionsLfTagPolicyExpressionArray added in v5.10.0

type PermissionsLfTagPolicyExpressionArray []PermissionsLfTagPolicyExpressionInput

func (PermissionsLfTagPolicyExpressionArray) ElementType added in v5.10.0

func (PermissionsLfTagPolicyExpressionArray) ToPermissionsLfTagPolicyExpressionArrayOutput added in v5.10.0

func (i PermissionsLfTagPolicyExpressionArray) ToPermissionsLfTagPolicyExpressionArrayOutput() PermissionsLfTagPolicyExpressionArrayOutput

func (PermissionsLfTagPolicyExpressionArray) ToPermissionsLfTagPolicyExpressionArrayOutputWithContext added in v5.10.0

func (i PermissionsLfTagPolicyExpressionArray) ToPermissionsLfTagPolicyExpressionArrayOutputWithContext(ctx context.Context) PermissionsLfTagPolicyExpressionArrayOutput

type PermissionsLfTagPolicyExpressionArrayInput added in v5.10.0

type PermissionsLfTagPolicyExpressionArrayInput interface {
	pulumi.Input

	ToPermissionsLfTagPolicyExpressionArrayOutput() PermissionsLfTagPolicyExpressionArrayOutput
	ToPermissionsLfTagPolicyExpressionArrayOutputWithContext(context.Context) PermissionsLfTagPolicyExpressionArrayOutput
}

PermissionsLfTagPolicyExpressionArrayInput is an input type that accepts PermissionsLfTagPolicyExpressionArray and PermissionsLfTagPolicyExpressionArrayOutput values. You can construct a concrete instance of `PermissionsLfTagPolicyExpressionArrayInput` via:

PermissionsLfTagPolicyExpressionArray{ PermissionsLfTagPolicyExpressionArgs{...} }

type PermissionsLfTagPolicyExpressionArrayOutput added in v5.10.0

type PermissionsLfTagPolicyExpressionArrayOutput struct{ *pulumi.OutputState }

func (PermissionsLfTagPolicyExpressionArrayOutput) ElementType added in v5.10.0

func (PermissionsLfTagPolicyExpressionArrayOutput) Index added in v5.10.0

func (PermissionsLfTagPolicyExpressionArrayOutput) ToPermissionsLfTagPolicyExpressionArrayOutput added in v5.10.0

func (o PermissionsLfTagPolicyExpressionArrayOutput) ToPermissionsLfTagPolicyExpressionArrayOutput() PermissionsLfTagPolicyExpressionArrayOutput

func (PermissionsLfTagPolicyExpressionArrayOutput) ToPermissionsLfTagPolicyExpressionArrayOutputWithContext added in v5.10.0

func (o PermissionsLfTagPolicyExpressionArrayOutput) ToPermissionsLfTagPolicyExpressionArrayOutputWithContext(ctx context.Context) PermissionsLfTagPolicyExpressionArrayOutput

type PermissionsLfTagPolicyExpressionInput added in v5.10.0

type PermissionsLfTagPolicyExpressionInput interface {
	pulumi.Input

	ToPermissionsLfTagPolicyExpressionOutput() PermissionsLfTagPolicyExpressionOutput
	ToPermissionsLfTagPolicyExpressionOutputWithContext(context.Context) PermissionsLfTagPolicyExpressionOutput
}

PermissionsLfTagPolicyExpressionInput is an input type that accepts PermissionsLfTagPolicyExpressionArgs and PermissionsLfTagPolicyExpressionOutput values. You can construct a concrete instance of `PermissionsLfTagPolicyExpressionInput` via:

PermissionsLfTagPolicyExpressionArgs{...}

type PermissionsLfTagPolicyExpressionOutput added in v5.10.0

type PermissionsLfTagPolicyExpressionOutput struct{ *pulumi.OutputState }

func (PermissionsLfTagPolicyExpressionOutput) ElementType added in v5.10.0

func (PermissionsLfTagPolicyExpressionOutput) Key added in v5.10.0

The key-name of an LF-Tag.

func (PermissionsLfTagPolicyExpressionOutput) ToPermissionsLfTagPolicyExpressionOutput added in v5.10.0

func (o PermissionsLfTagPolicyExpressionOutput) ToPermissionsLfTagPolicyExpressionOutput() PermissionsLfTagPolicyExpressionOutput

func (PermissionsLfTagPolicyExpressionOutput) ToPermissionsLfTagPolicyExpressionOutputWithContext added in v5.10.0

func (o PermissionsLfTagPolicyExpressionOutput) ToPermissionsLfTagPolicyExpressionOutputWithContext(ctx context.Context) PermissionsLfTagPolicyExpressionOutput

func (PermissionsLfTagPolicyExpressionOutput) Values added in v5.10.0

A list of possible values of an LF-Tag.

type PermissionsLfTagPolicyInput added in v5.10.0

type PermissionsLfTagPolicyInput interface {
	pulumi.Input

	ToPermissionsLfTagPolicyOutput() PermissionsLfTagPolicyOutput
	ToPermissionsLfTagPolicyOutputWithContext(context.Context) PermissionsLfTagPolicyOutput
}

PermissionsLfTagPolicyInput is an input type that accepts PermissionsLfTagPolicyArgs and PermissionsLfTagPolicyOutput values. You can construct a concrete instance of `PermissionsLfTagPolicyInput` via:

PermissionsLfTagPolicyArgs{...}

type PermissionsLfTagPolicyOutput added in v5.10.0

type PermissionsLfTagPolicyOutput struct{ *pulumi.OutputState }

func (PermissionsLfTagPolicyOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsLfTagPolicyOutput) ElementType added in v5.10.0

func (PermissionsLfTagPolicyOutput) Expressions added in v5.10.0

A list of tag conditions that apply to the resource's tag policy. Configuration block for tag conditions that apply to the policy. See `expression` below.

The following argument is optional:

func (PermissionsLfTagPolicyOutput) ResourceType added in v5.10.0

The resource type for which the tag policy applies. Valid values are `DATABASE` and `TABLE`.

func (PermissionsLfTagPolicyOutput) ToPermissionsLfTagPolicyOutput added in v5.10.0

func (o PermissionsLfTagPolicyOutput) ToPermissionsLfTagPolicyOutput() PermissionsLfTagPolicyOutput

func (PermissionsLfTagPolicyOutput) ToPermissionsLfTagPolicyOutputWithContext added in v5.10.0

func (o PermissionsLfTagPolicyOutput) ToPermissionsLfTagPolicyOutputWithContext(ctx context.Context) PermissionsLfTagPolicyOutput

func (PermissionsLfTagPolicyOutput) ToPermissionsLfTagPolicyPtrOutput added in v5.10.0

func (o PermissionsLfTagPolicyOutput) ToPermissionsLfTagPolicyPtrOutput() PermissionsLfTagPolicyPtrOutput

func (PermissionsLfTagPolicyOutput) ToPermissionsLfTagPolicyPtrOutputWithContext added in v5.10.0

func (o PermissionsLfTagPolicyOutput) ToPermissionsLfTagPolicyPtrOutputWithContext(ctx context.Context) PermissionsLfTagPolicyPtrOutput

type PermissionsLfTagPolicyPtrInput added in v5.10.0

type PermissionsLfTagPolicyPtrInput interface {
	pulumi.Input

	ToPermissionsLfTagPolicyPtrOutput() PermissionsLfTagPolicyPtrOutput
	ToPermissionsLfTagPolicyPtrOutputWithContext(context.Context) PermissionsLfTagPolicyPtrOutput
}

PermissionsLfTagPolicyPtrInput is an input type that accepts PermissionsLfTagPolicyArgs, PermissionsLfTagPolicyPtr and PermissionsLfTagPolicyPtrOutput values. You can construct a concrete instance of `PermissionsLfTagPolicyPtrInput` via:

        PermissionsLfTagPolicyArgs{...}

or:

        nil

func PermissionsLfTagPolicyPtr added in v5.10.0

func PermissionsLfTagPolicyPtr(v *PermissionsLfTagPolicyArgs) PermissionsLfTagPolicyPtrInput

type PermissionsLfTagPolicyPtrOutput added in v5.10.0

type PermissionsLfTagPolicyPtrOutput struct{ *pulumi.OutputState }

func (PermissionsLfTagPolicyPtrOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsLfTagPolicyPtrOutput) Elem added in v5.10.0

func (PermissionsLfTagPolicyPtrOutput) ElementType added in v5.10.0

func (PermissionsLfTagPolicyPtrOutput) Expressions added in v5.10.0

A list of tag conditions that apply to the resource's tag policy. Configuration block for tag conditions that apply to the policy. See `expression` below.

The following argument is optional:

func (PermissionsLfTagPolicyPtrOutput) ResourceType added in v5.10.0

The resource type for which the tag policy applies. Valid values are `DATABASE` and `TABLE`.

func (PermissionsLfTagPolicyPtrOutput) ToPermissionsLfTagPolicyPtrOutput added in v5.10.0

func (o PermissionsLfTagPolicyPtrOutput) ToPermissionsLfTagPolicyPtrOutput() PermissionsLfTagPolicyPtrOutput

func (PermissionsLfTagPolicyPtrOutput) ToPermissionsLfTagPolicyPtrOutputWithContext added in v5.10.0

func (o PermissionsLfTagPolicyPtrOutput) ToPermissionsLfTagPolicyPtrOutputWithContext(ctx context.Context) PermissionsLfTagPolicyPtrOutput

type PermissionsLfTagPtrInput added in v5.10.0

type PermissionsLfTagPtrInput interface {
	pulumi.Input

	ToPermissionsLfTagPtrOutput() PermissionsLfTagPtrOutput
	ToPermissionsLfTagPtrOutputWithContext(context.Context) PermissionsLfTagPtrOutput
}

PermissionsLfTagPtrInput is an input type that accepts PermissionsLfTagArgs, PermissionsLfTagPtr and PermissionsLfTagPtrOutput values. You can construct a concrete instance of `PermissionsLfTagPtrInput` via:

        PermissionsLfTagArgs{...}

or:

        nil

func PermissionsLfTagPtr added in v5.10.0

func PermissionsLfTagPtr(v *PermissionsLfTagArgs) PermissionsLfTagPtrInput

type PermissionsLfTagPtrOutput added in v5.10.0

type PermissionsLfTagPtrOutput struct{ *pulumi.OutputState }

func (PermissionsLfTagPtrOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsLfTagPtrOutput) Elem added in v5.10.0

func (PermissionsLfTagPtrOutput) ElementType added in v5.10.0

func (PermissionsLfTagPtrOutput) ElementType() reflect.Type

func (PermissionsLfTagPtrOutput) Key added in v5.10.0

The key-name for the tag.

func (PermissionsLfTagPtrOutput) ToPermissionsLfTagPtrOutput added in v5.10.0

func (o PermissionsLfTagPtrOutput) ToPermissionsLfTagPtrOutput() PermissionsLfTagPtrOutput

func (PermissionsLfTagPtrOutput) ToPermissionsLfTagPtrOutputWithContext added in v5.10.0

func (o PermissionsLfTagPtrOutput) ToPermissionsLfTagPtrOutputWithContext(ctx context.Context) PermissionsLfTagPtrOutput

func (PermissionsLfTagPtrOutput) Values added in v5.10.0

A list of possible values an attribute can take.

The following argument is optional:

type PermissionsMap

type PermissionsMap map[string]PermissionsInput

func (PermissionsMap) ElementType

func (PermissionsMap) ElementType() reflect.Type

func (PermissionsMap) ToPermissionsMapOutput

func (i PermissionsMap) ToPermissionsMapOutput() PermissionsMapOutput

func (PermissionsMap) ToPermissionsMapOutputWithContext

func (i PermissionsMap) ToPermissionsMapOutputWithContext(ctx context.Context) PermissionsMapOutput

type PermissionsMapInput

type PermissionsMapInput interface {
	pulumi.Input

	ToPermissionsMapOutput() PermissionsMapOutput
	ToPermissionsMapOutputWithContext(context.Context) PermissionsMapOutput
}

PermissionsMapInput is an input type that accepts PermissionsMap and PermissionsMapOutput values. You can construct a concrete instance of `PermissionsMapInput` via:

PermissionsMap{ "key": PermissionsArgs{...} }

type PermissionsMapOutput

type PermissionsMapOutput struct{ *pulumi.OutputState }

func (PermissionsMapOutput) ElementType

func (PermissionsMapOutput) ElementType() reflect.Type

func (PermissionsMapOutput) MapIndex

func (PermissionsMapOutput) ToPermissionsMapOutput

func (o PermissionsMapOutput) ToPermissionsMapOutput() PermissionsMapOutput

func (PermissionsMapOutput) ToPermissionsMapOutputWithContext

func (o PermissionsMapOutput) ToPermissionsMapOutputWithContext(ctx context.Context) PermissionsMapOutput

type PermissionsOutput

type PermissionsOutput struct{ *pulumi.OutputState }

func (PermissionsOutput) CatalogId added in v5.4.0

Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

func (PermissionsOutput) CatalogResource added in v5.4.0

func (o PermissionsOutput) CatalogResource() pulumi.BoolPtrOutput

Whether the permissions are to be granted for the Data Catalog. Defaults to `false`.

func (PermissionsOutput) DataLocation added in v5.4.0

Configuration block for a data location resource. Detailed below.

func (PermissionsOutput) Database added in v5.4.0

Configuration block for a database resource. Detailed below.

func (PermissionsOutput) ElementType

func (PermissionsOutput) ElementType() reflect.Type

func (PermissionsOutput) LfTag added in v5.10.0

Configuration block for an LF-tag resource. Detailed below.

func (PermissionsOutput) LfTagPolicy added in v5.10.0

Configuration block for an LF-tag policy resource. Detailed below.

func (PermissionsOutput) Permissions added in v5.4.0

func (o PermissionsOutput) Permissions() pulumi.StringArrayOutput

List of permissions granted to the principal. Valid values may include `ALL`, `ALTER`, `ASSOCIATE`, `CREATE_DATABASE`, `CREATE_TABLE`, `DATA_LOCATION_ACCESS`, `DELETE`, `DESCRIBE`, `DROP`, `INSERT`, and `SELECT`. For details on each permission, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).

func (PermissionsOutput) PermissionsWithGrantOptions added in v5.4.0

func (o PermissionsOutput) PermissionsWithGrantOptions() pulumi.StringArrayOutput

Subset of `permissions` which the principal can pass.

func (PermissionsOutput) Principal added in v5.4.0

func (o PermissionsOutput) Principal() pulumi.StringOutput

Principal to be granted the permissions on the resource. Supported principals include `IAM_ALLOWED_PRINCIPALS` (see Default Behavior and `IAMAllowedPrincipals` above), IAM roles, users, groups, SAML groups and users, QuickSight groups, OUs, and organizations as well as AWS account IDs for cross-account permissions. For more information, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).

> **NOTE:** We highly recommend that the `principal` _NOT_ be a Lake Formation administrator (granted using `lakeformation.DataLakeSettings`). The entity (e.g., IAM role) running the deployment will most likely need to be a Lake Formation administrator. As such, the entity will have implicit permissions and does not need permissions granted through this resource.

One of the following is required:

func (PermissionsOutput) Table added in v5.4.0

Configuration block for a table resource. Detailed below.

func (PermissionsOutput) TableWithColumns added in v5.4.0

Configuration block for a table with columns resource. Detailed below.

The following arguments are optional:

func (PermissionsOutput) ToPermissionsOutput

func (o PermissionsOutput) ToPermissionsOutput() PermissionsOutput

func (PermissionsOutput) ToPermissionsOutputWithContext

func (o PermissionsOutput) ToPermissionsOutputWithContext(ctx context.Context) PermissionsOutput

type PermissionsState

type PermissionsState struct {
	// Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.
	CatalogId pulumi.StringPtrInput
	// Whether the permissions are to be granted for the Data Catalog. Defaults to `false`.
	CatalogResource pulumi.BoolPtrInput
	// Configuration block for a data location resource. Detailed below.
	DataLocation PermissionsDataLocationPtrInput
	// Configuration block for a database resource. Detailed below.
	Database PermissionsDatabasePtrInput
	// Configuration block for an LF-tag resource. Detailed below.
	LfTag PermissionsLfTagPtrInput
	// Configuration block for an LF-tag policy resource. Detailed below.
	LfTagPolicy PermissionsLfTagPolicyPtrInput
	// List of permissions granted to the principal. Valid values may include `ALL`, `ALTER`, `ASSOCIATE`, `CREATE_DATABASE`, `CREATE_TABLE`, `DATA_LOCATION_ACCESS`, `DELETE`, `DESCRIBE`, `DROP`, `INSERT`, and `SELECT`. For details on each permission, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	Permissions pulumi.StringArrayInput
	// Subset of `permissions` which the principal can pass.
	PermissionsWithGrantOptions pulumi.StringArrayInput
	// Principal to be granted the permissions on the resource. Supported principals include `IAM_ALLOWED_PRINCIPALS` (see Default Behavior and `IAMAllowedPrincipals` above), IAM roles, users, groups, SAML groups and users, QuickSight groups, OUs, and organizations as well as AWS account IDs for cross-account permissions. For more information, see [Lake Formation Permissions Reference](https://docs.aws.amazon.com/lake-formation/latest/dg/lf-permissions-reference.html).
	//
	// > **NOTE:** We highly recommend that the `principal` _NOT_ be a Lake Formation administrator (granted using `lakeformation.DataLakeSettings`). The entity (e.g., IAM role) running the deployment will most likely need to be a Lake Formation administrator. As such, the entity will have implicit permissions and does not need permissions granted through this resource.
	//
	// One of the following is required:
	Principal pulumi.StringPtrInput
	// Configuration block for a table resource. Detailed below.
	Table PermissionsTablePtrInput
	// Configuration block for a table with columns resource. Detailed below.
	//
	// The following arguments are optional:
	TableWithColumns PermissionsTableWithColumnsPtrInput
}

func (PermissionsState) ElementType

func (PermissionsState) ElementType() reflect.Type

type PermissionsTable

type PermissionsTable struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// Name of the database for the table. Unique to a Data Catalog.
	DatabaseName string `pulumi:"databaseName"`
	// Name of the table.
	Name *string `pulumi:"name"`
	// Whether to use a wildcard representing every table under a database. Defaults to `false`.
	//
	// The following arguments are optional:
	Wildcard *bool `pulumi:"wildcard"`
}

type PermissionsTableArgs

type PermissionsTableArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// Name of the database for the table. Unique to a Data Catalog.
	DatabaseName pulumi.StringInput `pulumi:"databaseName"`
	// Name of the table.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Whether to use a wildcard representing every table under a database. Defaults to `false`.
	//
	// The following arguments are optional:
	Wildcard pulumi.BoolPtrInput `pulumi:"wildcard"`
}

func (PermissionsTableArgs) ElementType

func (PermissionsTableArgs) ElementType() reflect.Type

func (PermissionsTableArgs) ToPermissionsTableOutput

func (i PermissionsTableArgs) ToPermissionsTableOutput() PermissionsTableOutput

func (PermissionsTableArgs) ToPermissionsTableOutputWithContext

func (i PermissionsTableArgs) ToPermissionsTableOutputWithContext(ctx context.Context) PermissionsTableOutput

func (PermissionsTableArgs) ToPermissionsTablePtrOutput

func (i PermissionsTableArgs) ToPermissionsTablePtrOutput() PermissionsTablePtrOutput

func (PermissionsTableArgs) ToPermissionsTablePtrOutputWithContext

func (i PermissionsTableArgs) ToPermissionsTablePtrOutputWithContext(ctx context.Context) PermissionsTablePtrOutput

type PermissionsTableInput

type PermissionsTableInput interface {
	pulumi.Input

	ToPermissionsTableOutput() PermissionsTableOutput
	ToPermissionsTableOutputWithContext(context.Context) PermissionsTableOutput
}

PermissionsTableInput is an input type that accepts PermissionsTableArgs and PermissionsTableOutput values. You can construct a concrete instance of `PermissionsTableInput` via:

PermissionsTableArgs{...}

type PermissionsTableOutput

type PermissionsTableOutput struct{ *pulumi.OutputState }

func (PermissionsTableOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsTableOutput) DatabaseName

func (o PermissionsTableOutput) DatabaseName() pulumi.StringOutput

Name of the database for the table. Unique to a Data Catalog.

func (PermissionsTableOutput) ElementType

func (PermissionsTableOutput) ElementType() reflect.Type

func (PermissionsTableOutput) Name

Name of the table.

func (PermissionsTableOutput) ToPermissionsTableOutput

func (o PermissionsTableOutput) ToPermissionsTableOutput() PermissionsTableOutput

func (PermissionsTableOutput) ToPermissionsTableOutputWithContext

func (o PermissionsTableOutput) ToPermissionsTableOutputWithContext(ctx context.Context) PermissionsTableOutput

func (PermissionsTableOutput) ToPermissionsTablePtrOutput

func (o PermissionsTableOutput) ToPermissionsTablePtrOutput() PermissionsTablePtrOutput

func (PermissionsTableOutput) ToPermissionsTablePtrOutputWithContext

func (o PermissionsTableOutput) ToPermissionsTablePtrOutputWithContext(ctx context.Context) PermissionsTablePtrOutput

func (PermissionsTableOutput) Wildcard

Whether to use a wildcard representing every table under a database. Defaults to `false`.

The following arguments are optional:

type PermissionsTablePtrInput

type PermissionsTablePtrInput interface {
	pulumi.Input

	ToPermissionsTablePtrOutput() PermissionsTablePtrOutput
	ToPermissionsTablePtrOutputWithContext(context.Context) PermissionsTablePtrOutput
}

PermissionsTablePtrInput is an input type that accepts PermissionsTableArgs, PermissionsTablePtr and PermissionsTablePtrOutput values. You can construct a concrete instance of `PermissionsTablePtrInput` via:

        PermissionsTableArgs{...}

or:

        nil

type PermissionsTablePtrOutput

type PermissionsTablePtrOutput struct{ *pulumi.OutputState }

func (PermissionsTablePtrOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsTablePtrOutput) DatabaseName

Name of the database for the table. Unique to a Data Catalog.

func (PermissionsTablePtrOutput) Elem

func (PermissionsTablePtrOutput) ElementType

func (PermissionsTablePtrOutput) ElementType() reflect.Type

func (PermissionsTablePtrOutput) Name

Name of the table.

func (PermissionsTablePtrOutput) ToPermissionsTablePtrOutput

func (o PermissionsTablePtrOutput) ToPermissionsTablePtrOutput() PermissionsTablePtrOutput

func (PermissionsTablePtrOutput) ToPermissionsTablePtrOutputWithContext

func (o PermissionsTablePtrOutput) ToPermissionsTablePtrOutputWithContext(ctx context.Context) PermissionsTablePtrOutput

func (PermissionsTablePtrOutput) Wildcard

Whether to use a wildcard representing every table under a database. Defaults to `false`.

The following arguments are optional:

type PermissionsTableWithColumns

type PermissionsTableWithColumns struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// Set of column names for the table.
	ColumnNames []string `pulumi:"columnNames"`
	// Name of the database for the table with columns resource. Unique to the Data Catalog.
	DatabaseName string `pulumi:"databaseName"`
	// Set of column names for the table to exclude. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.
	ExcludedColumnNames []string `pulumi:"excludedColumnNames"`
	// Name of the table resource.
	Name string `pulumi:"name"`
	// Whether to use a column wildcard. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.
	//
	// The following arguments are optional:
	Wildcard *bool `pulumi:"wildcard"`
}

type PermissionsTableWithColumnsArgs

type PermissionsTableWithColumnsArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// Set of column names for the table.
	ColumnNames pulumi.StringArrayInput `pulumi:"columnNames"`
	// Name of the database for the table with columns resource. Unique to the Data Catalog.
	DatabaseName pulumi.StringInput `pulumi:"databaseName"`
	// Set of column names for the table to exclude. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.
	ExcludedColumnNames pulumi.StringArrayInput `pulumi:"excludedColumnNames"`
	// Name of the table resource.
	Name pulumi.StringInput `pulumi:"name"`
	// Whether to use a column wildcard. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.
	//
	// The following arguments are optional:
	Wildcard pulumi.BoolPtrInput `pulumi:"wildcard"`
}

func (PermissionsTableWithColumnsArgs) ElementType

func (PermissionsTableWithColumnsArgs) ToPermissionsTableWithColumnsOutput

func (i PermissionsTableWithColumnsArgs) ToPermissionsTableWithColumnsOutput() PermissionsTableWithColumnsOutput

func (PermissionsTableWithColumnsArgs) ToPermissionsTableWithColumnsOutputWithContext

func (i PermissionsTableWithColumnsArgs) ToPermissionsTableWithColumnsOutputWithContext(ctx context.Context) PermissionsTableWithColumnsOutput

func (PermissionsTableWithColumnsArgs) ToPermissionsTableWithColumnsPtrOutput

func (i PermissionsTableWithColumnsArgs) ToPermissionsTableWithColumnsPtrOutput() PermissionsTableWithColumnsPtrOutput

func (PermissionsTableWithColumnsArgs) ToPermissionsTableWithColumnsPtrOutputWithContext

func (i PermissionsTableWithColumnsArgs) ToPermissionsTableWithColumnsPtrOutputWithContext(ctx context.Context) PermissionsTableWithColumnsPtrOutput

type PermissionsTableWithColumnsInput

type PermissionsTableWithColumnsInput interface {
	pulumi.Input

	ToPermissionsTableWithColumnsOutput() PermissionsTableWithColumnsOutput
	ToPermissionsTableWithColumnsOutputWithContext(context.Context) PermissionsTableWithColumnsOutput
}

PermissionsTableWithColumnsInput is an input type that accepts PermissionsTableWithColumnsArgs and PermissionsTableWithColumnsOutput values. You can construct a concrete instance of `PermissionsTableWithColumnsInput` via:

PermissionsTableWithColumnsArgs{...}

type PermissionsTableWithColumnsOutput

type PermissionsTableWithColumnsOutput struct{ *pulumi.OutputState }

func (PermissionsTableWithColumnsOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsTableWithColumnsOutput) ColumnNames

Set of column names for the table.

func (PermissionsTableWithColumnsOutput) DatabaseName

Name of the database for the table with columns resource. Unique to the Data Catalog.

func (PermissionsTableWithColumnsOutput) ElementType

func (PermissionsTableWithColumnsOutput) ExcludedColumnNames

Set of column names for the table to exclude. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.

func (PermissionsTableWithColumnsOutput) Name

Name of the table resource.

func (PermissionsTableWithColumnsOutput) ToPermissionsTableWithColumnsOutput

func (o PermissionsTableWithColumnsOutput) ToPermissionsTableWithColumnsOutput() PermissionsTableWithColumnsOutput

func (PermissionsTableWithColumnsOutput) ToPermissionsTableWithColumnsOutputWithContext

func (o PermissionsTableWithColumnsOutput) ToPermissionsTableWithColumnsOutputWithContext(ctx context.Context) PermissionsTableWithColumnsOutput

func (PermissionsTableWithColumnsOutput) ToPermissionsTableWithColumnsPtrOutput

func (o PermissionsTableWithColumnsOutput) ToPermissionsTableWithColumnsPtrOutput() PermissionsTableWithColumnsPtrOutput

func (PermissionsTableWithColumnsOutput) ToPermissionsTableWithColumnsPtrOutputWithContext

func (o PermissionsTableWithColumnsOutput) ToPermissionsTableWithColumnsPtrOutputWithContext(ctx context.Context) PermissionsTableWithColumnsPtrOutput

func (PermissionsTableWithColumnsOutput) Wildcard

Whether to use a column wildcard. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.

The following arguments are optional:

type PermissionsTableWithColumnsPtrInput

type PermissionsTableWithColumnsPtrInput interface {
	pulumi.Input

	ToPermissionsTableWithColumnsPtrOutput() PermissionsTableWithColumnsPtrOutput
	ToPermissionsTableWithColumnsPtrOutputWithContext(context.Context) PermissionsTableWithColumnsPtrOutput
}

PermissionsTableWithColumnsPtrInput is an input type that accepts PermissionsTableWithColumnsArgs, PermissionsTableWithColumnsPtr and PermissionsTableWithColumnsPtrOutput values. You can construct a concrete instance of `PermissionsTableWithColumnsPtrInput` via:

        PermissionsTableWithColumnsArgs{...}

or:

        nil

type PermissionsTableWithColumnsPtrOutput

type PermissionsTableWithColumnsPtrOutput struct{ *pulumi.OutputState }

func (PermissionsTableWithColumnsPtrOutput) CatalogId

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (PermissionsTableWithColumnsPtrOutput) ColumnNames

Set of column names for the table.

func (PermissionsTableWithColumnsPtrOutput) DatabaseName

Name of the database for the table with columns resource. Unique to the Data Catalog.

func (PermissionsTableWithColumnsPtrOutput) Elem

func (PermissionsTableWithColumnsPtrOutput) ElementType

func (PermissionsTableWithColumnsPtrOutput) ExcludedColumnNames

Set of column names for the table to exclude. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.

func (PermissionsTableWithColumnsPtrOutput) Name

Name of the table resource.

func (PermissionsTableWithColumnsPtrOutput) ToPermissionsTableWithColumnsPtrOutput

func (o PermissionsTableWithColumnsPtrOutput) ToPermissionsTableWithColumnsPtrOutput() PermissionsTableWithColumnsPtrOutput

func (PermissionsTableWithColumnsPtrOutput) ToPermissionsTableWithColumnsPtrOutputWithContext

func (o PermissionsTableWithColumnsPtrOutput) ToPermissionsTableWithColumnsPtrOutputWithContext(ctx context.Context) PermissionsTableWithColumnsPtrOutput

func (PermissionsTableWithColumnsPtrOutput) Wildcard

Whether to use a column wildcard. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.

The following arguments are optional:

type Resource

type Resource struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the resource, an S3 path.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// (Optional) The date and time the resource was last modified in [RFC 3339 format](https://tools.ietf.org/html/rfc3339#section-5.8).
	LastModified pulumi.StringOutput `pulumi:"lastModified"`
	// Role that has read/write access to the resource. If not provided, the Lake Formation service-linked role must exist and is used.
	//
	// > **NOTE:** AWS does not support registering an S3 location with an IAM role and subsequently updating the S3 location registration to a service-linked role.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
}

Registers a Lake Formation resource (e.g., S3 bucket) as managed by the Data Catalog. In other words, the S3 path is added to the data lake.

Choose a role that has read/write access to the chosen Amazon S3 path or use the service-linked role. When you register the S3 path, the service-linked role and a new inline policy are created on your behalf. Lake Formation adds the first path to the inline policy and attaches it to the service-linked role. When you register subsequent paths, Lake Formation adds the path to the existing policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleBucket, err := s3.LookupBucket(ctx, &s3.LookupBucketArgs{
			Bucket: "an-example-bucket",
		}, nil)
		if err != nil {
			return err
		}
		_, err = lakeformation.NewResource(ctx, "exampleResource", &lakeformation.ResourceArgs{
			Arn: *pulumi.String(exampleBucket.Arn),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetResource

func GetResource(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceState, opts ...pulumi.ResourceOption) (*Resource, error)

GetResource gets an existing Resource resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResource

func NewResource(ctx *pulumi.Context,
	name string, args *ResourceArgs, opts ...pulumi.ResourceOption) (*Resource, error)

NewResource registers a new resource with the given unique name, arguments, and options.

func (*Resource) ElementType

func (*Resource) ElementType() reflect.Type

func (*Resource) ToResourceOutput

func (i *Resource) ToResourceOutput() ResourceOutput

func (*Resource) ToResourceOutputWithContext

func (i *Resource) ToResourceOutputWithContext(ctx context.Context) ResourceOutput

type ResourceArgs

type ResourceArgs struct {
	// Amazon Resource Name (ARN) of the resource, an S3 path.
	Arn pulumi.StringInput
	// Role that has read/write access to the resource. If not provided, the Lake Formation service-linked role must exist and is used.
	//
	// > **NOTE:** AWS does not support registering an S3 location with an IAM role and subsequently updating the S3 location registration to a service-linked role.
	RoleArn pulumi.StringPtrInput
}

The set of arguments for constructing a Resource resource.

func (ResourceArgs) ElementType

func (ResourceArgs) ElementType() reflect.Type

type ResourceArray

type ResourceArray []ResourceInput

func (ResourceArray) ElementType

func (ResourceArray) ElementType() reflect.Type

func (ResourceArray) ToResourceArrayOutput

func (i ResourceArray) ToResourceArrayOutput() ResourceArrayOutput

func (ResourceArray) ToResourceArrayOutputWithContext

func (i ResourceArray) ToResourceArrayOutputWithContext(ctx context.Context) ResourceArrayOutput

type ResourceArrayInput

type ResourceArrayInput interface {
	pulumi.Input

	ToResourceArrayOutput() ResourceArrayOutput
	ToResourceArrayOutputWithContext(context.Context) ResourceArrayOutput
}

ResourceArrayInput is an input type that accepts ResourceArray and ResourceArrayOutput values. You can construct a concrete instance of `ResourceArrayInput` via:

ResourceArray{ ResourceArgs{...} }

type ResourceArrayOutput

type ResourceArrayOutput struct{ *pulumi.OutputState }

func (ResourceArrayOutput) ElementType

func (ResourceArrayOutput) ElementType() reflect.Type

func (ResourceArrayOutput) Index

func (ResourceArrayOutput) ToResourceArrayOutput

func (o ResourceArrayOutput) ToResourceArrayOutput() ResourceArrayOutput

func (ResourceArrayOutput) ToResourceArrayOutputWithContext

func (o ResourceArrayOutput) ToResourceArrayOutputWithContext(ctx context.Context) ResourceArrayOutput

type ResourceInput

type ResourceInput interface {
	pulumi.Input

	ToResourceOutput() ResourceOutput
	ToResourceOutputWithContext(ctx context.Context) ResourceOutput
}

type ResourceLfTags added in v5.10.0

type ResourceLfTags struct {
	pulumi.CustomResourceState

	// Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.
	CatalogId pulumi.StringOutput `pulumi:"catalogId"`
	// Configuration block for a database resource. See below.
	Database ResourceLfTagsDatabaseOutput `pulumi:"database"`
	// Set of LF-tags to attach to the resource. See below.
	//
	// Exactly one of the following is required:
	LfTags ResourceLfTagsLfTagArrayOutput `pulumi:"lfTags"`
	// Configuration block for a table resource. See below.
	Table ResourceLfTagsTableOutput `pulumi:"table"`
	// Configuration block for a table with columns resource. See below.
	//
	// The following arguments are optional:
	TableWithColumns ResourceLfTagsTableWithColumnsOutput `pulumi:"tableWithColumns"`
}

Manages an attachment between one or more existing LF-tags and an existing Lake Formation resource.

## Example Usage ### Database Example

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleLfTag, err := lakeformation.NewLfTag(ctx, "exampleLfTag", &lakeformation.LfTagArgs{
			Key: pulumi.String("right"),
			Values: pulumi.StringArray{
				pulumi.String("abbey"),
				pulumi.String("village"),
				pulumi.String("luffield"),
				pulumi.String("woodcote"),
				pulumi.String("copse"),
				pulumi.String("chapel"),
				pulumi.String("stowe"),
				pulumi.String("club"),
			},
		})
		if err != nil {
			return err
		}
		_, err = lakeformation.NewResourceLfTags(ctx, "exampleResourceLfTags", &lakeformation.ResourceLfTagsArgs{
			Database: &lakeformation.ResourceLfTagsDatabaseArgs{
				Name: pulumi.Any(aws_glue_catalog_database.Example.Name),
			},
			LfTags: lakeformation.ResourceLfTagsLfTagArray{
				&lakeformation.ResourceLfTagsLfTagArgs{
					Key:   exampleLfTag.Key,
					Value: pulumi.String("stowe"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Multiple Tags Example

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/lakeformation"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := lakeformation.NewLfTag(ctx, "exampleLfTag", &lakeformation.LfTagArgs{
			Key: pulumi.String("right"),
			Values: pulumi.StringArray{
				pulumi.String("abbey"),
				pulumi.String("village"),
				pulumi.String("luffield"),
				pulumi.String("woodcote"),
				pulumi.String("copse"),
				pulumi.String("chapel"),
				pulumi.String("stowe"),
				pulumi.String("club"),
			},
		})
		if err != nil {
			return err
		}
		_, err = lakeformation.NewLfTag(ctx, "example2", &lakeformation.LfTagArgs{
			Key: pulumi.String("left"),
			Values: pulumi.StringArray{
				pulumi.String("farm"),
				pulumi.String("theloop"),
				pulumi.String("aintree"),
				pulumi.String("brooklands"),
				pulumi.String("maggotts"),
				pulumi.String("becketts"),
				pulumi.String("vale"),
			},
		})
		if err != nil {
			return err
		}
		_, err = lakeformation.NewResourceLfTags(ctx, "exampleResourceLfTags", &lakeformation.ResourceLfTagsArgs{
			Database: &lakeformation.ResourceLfTagsDatabaseArgs{
				Name: pulumi.Any(aws_glue_catalog_database.Example.Name),
			},
			LfTags: lakeformation.ResourceLfTagsLfTagArray{
				&lakeformation.ResourceLfTagsLfTagArgs{
					Key:   pulumi.String("right"),
					Value: pulumi.String("luffield"),
				},
				&lakeformation.ResourceLfTagsLfTagArgs{
					Key:   pulumi.String("left"),
					Value: pulumi.String("aintree"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetResourceLfTags added in v5.10.0

func GetResourceLfTags(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResourceLfTagsState, opts ...pulumi.ResourceOption) (*ResourceLfTags, error)

GetResourceLfTags gets an existing ResourceLfTags resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResourceLfTags added in v5.10.0

func NewResourceLfTags(ctx *pulumi.Context,
	name string, args *ResourceLfTagsArgs, opts ...pulumi.ResourceOption) (*ResourceLfTags, error)

NewResourceLfTags registers a new resource with the given unique name, arguments, and options.

func (*ResourceLfTags) ElementType added in v5.10.0

func (*ResourceLfTags) ElementType() reflect.Type

func (*ResourceLfTags) ToResourceLfTagsOutput added in v5.10.0

func (i *ResourceLfTags) ToResourceLfTagsOutput() ResourceLfTagsOutput

func (*ResourceLfTags) ToResourceLfTagsOutputWithContext added in v5.10.0

func (i *ResourceLfTags) ToResourceLfTagsOutputWithContext(ctx context.Context) ResourceLfTagsOutput

type ResourceLfTagsArgs added in v5.10.0

type ResourceLfTagsArgs struct {
	// Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.
	CatalogId pulumi.StringPtrInput
	// Configuration block for a database resource. See below.
	Database ResourceLfTagsDatabasePtrInput
	// Set of LF-tags to attach to the resource. See below.
	//
	// Exactly one of the following is required:
	LfTags ResourceLfTagsLfTagArrayInput
	// Configuration block for a table resource. See below.
	Table ResourceLfTagsTablePtrInput
	// Configuration block for a table with columns resource. See below.
	//
	// The following arguments are optional:
	TableWithColumns ResourceLfTagsTableWithColumnsPtrInput
}

The set of arguments for constructing a ResourceLfTags resource.

func (ResourceLfTagsArgs) ElementType added in v5.10.0

func (ResourceLfTagsArgs) ElementType() reflect.Type

type ResourceLfTagsArray added in v5.10.0

type ResourceLfTagsArray []ResourceLfTagsInput

func (ResourceLfTagsArray) ElementType added in v5.10.0

func (ResourceLfTagsArray) ElementType() reflect.Type

func (ResourceLfTagsArray) ToResourceLfTagsArrayOutput added in v5.10.0

func (i ResourceLfTagsArray) ToResourceLfTagsArrayOutput() ResourceLfTagsArrayOutput

func (ResourceLfTagsArray) ToResourceLfTagsArrayOutputWithContext added in v5.10.0

func (i ResourceLfTagsArray) ToResourceLfTagsArrayOutputWithContext(ctx context.Context) ResourceLfTagsArrayOutput

type ResourceLfTagsArrayInput added in v5.10.0

type ResourceLfTagsArrayInput interface {
	pulumi.Input

	ToResourceLfTagsArrayOutput() ResourceLfTagsArrayOutput
	ToResourceLfTagsArrayOutputWithContext(context.Context) ResourceLfTagsArrayOutput
}

ResourceLfTagsArrayInput is an input type that accepts ResourceLfTagsArray and ResourceLfTagsArrayOutput values. You can construct a concrete instance of `ResourceLfTagsArrayInput` via:

ResourceLfTagsArray{ ResourceLfTagsArgs{...} }

type ResourceLfTagsArrayOutput added in v5.10.0

type ResourceLfTagsArrayOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsArrayOutput) ElementType added in v5.10.0

func (ResourceLfTagsArrayOutput) ElementType() reflect.Type

func (ResourceLfTagsArrayOutput) Index added in v5.10.0

func (ResourceLfTagsArrayOutput) ToResourceLfTagsArrayOutput added in v5.10.0

func (o ResourceLfTagsArrayOutput) ToResourceLfTagsArrayOutput() ResourceLfTagsArrayOutput

func (ResourceLfTagsArrayOutput) ToResourceLfTagsArrayOutputWithContext added in v5.10.0

func (o ResourceLfTagsArrayOutput) ToResourceLfTagsArrayOutputWithContext(ctx context.Context) ResourceLfTagsArrayOutput

type ResourceLfTagsDatabase added in v5.10.0

type ResourceLfTagsDatabase struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// Name of the database resource. Unique to the Data Catalog.
	//
	// The following argument is optional:
	Name string `pulumi:"name"`
}

type ResourceLfTagsDatabaseArgs added in v5.10.0

type ResourceLfTagsDatabaseArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// Name of the database resource. Unique to the Data Catalog.
	//
	// The following argument is optional:
	Name pulumi.StringInput `pulumi:"name"`
}

func (ResourceLfTagsDatabaseArgs) ElementType added in v5.10.0

func (ResourceLfTagsDatabaseArgs) ElementType() reflect.Type

func (ResourceLfTagsDatabaseArgs) ToResourceLfTagsDatabaseOutput added in v5.10.0

func (i ResourceLfTagsDatabaseArgs) ToResourceLfTagsDatabaseOutput() ResourceLfTagsDatabaseOutput

func (ResourceLfTagsDatabaseArgs) ToResourceLfTagsDatabaseOutputWithContext added in v5.10.0

func (i ResourceLfTagsDatabaseArgs) ToResourceLfTagsDatabaseOutputWithContext(ctx context.Context) ResourceLfTagsDatabaseOutput

func (ResourceLfTagsDatabaseArgs) ToResourceLfTagsDatabasePtrOutput added in v5.10.0

func (i ResourceLfTagsDatabaseArgs) ToResourceLfTagsDatabasePtrOutput() ResourceLfTagsDatabasePtrOutput

func (ResourceLfTagsDatabaseArgs) ToResourceLfTagsDatabasePtrOutputWithContext added in v5.10.0

func (i ResourceLfTagsDatabaseArgs) ToResourceLfTagsDatabasePtrOutputWithContext(ctx context.Context) ResourceLfTagsDatabasePtrOutput

type ResourceLfTagsDatabaseInput added in v5.10.0

type ResourceLfTagsDatabaseInput interface {
	pulumi.Input

	ToResourceLfTagsDatabaseOutput() ResourceLfTagsDatabaseOutput
	ToResourceLfTagsDatabaseOutputWithContext(context.Context) ResourceLfTagsDatabaseOutput
}

ResourceLfTagsDatabaseInput is an input type that accepts ResourceLfTagsDatabaseArgs and ResourceLfTagsDatabaseOutput values. You can construct a concrete instance of `ResourceLfTagsDatabaseInput` via:

ResourceLfTagsDatabaseArgs{...}

type ResourceLfTagsDatabaseOutput added in v5.10.0

type ResourceLfTagsDatabaseOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsDatabaseOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (ResourceLfTagsDatabaseOutput) ElementType added in v5.10.0

func (ResourceLfTagsDatabaseOutput) Name added in v5.10.0

Name of the database resource. Unique to the Data Catalog.

The following argument is optional:

func (ResourceLfTagsDatabaseOutput) ToResourceLfTagsDatabaseOutput added in v5.10.0

func (o ResourceLfTagsDatabaseOutput) ToResourceLfTagsDatabaseOutput() ResourceLfTagsDatabaseOutput

func (ResourceLfTagsDatabaseOutput) ToResourceLfTagsDatabaseOutputWithContext added in v5.10.0

func (o ResourceLfTagsDatabaseOutput) ToResourceLfTagsDatabaseOutputWithContext(ctx context.Context) ResourceLfTagsDatabaseOutput

func (ResourceLfTagsDatabaseOutput) ToResourceLfTagsDatabasePtrOutput added in v5.10.0

func (o ResourceLfTagsDatabaseOutput) ToResourceLfTagsDatabasePtrOutput() ResourceLfTagsDatabasePtrOutput

func (ResourceLfTagsDatabaseOutput) ToResourceLfTagsDatabasePtrOutputWithContext added in v5.10.0

func (o ResourceLfTagsDatabaseOutput) ToResourceLfTagsDatabasePtrOutputWithContext(ctx context.Context) ResourceLfTagsDatabasePtrOutput

type ResourceLfTagsDatabasePtrInput added in v5.10.0

type ResourceLfTagsDatabasePtrInput interface {
	pulumi.Input

	ToResourceLfTagsDatabasePtrOutput() ResourceLfTagsDatabasePtrOutput
	ToResourceLfTagsDatabasePtrOutputWithContext(context.Context) ResourceLfTagsDatabasePtrOutput
}

ResourceLfTagsDatabasePtrInput is an input type that accepts ResourceLfTagsDatabaseArgs, ResourceLfTagsDatabasePtr and ResourceLfTagsDatabasePtrOutput values. You can construct a concrete instance of `ResourceLfTagsDatabasePtrInput` via:

        ResourceLfTagsDatabaseArgs{...}

or:

        nil

func ResourceLfTagsDatabasePtr added in v5.10.0

func ResourceLfTagsDatabasePtr(v *ResourceLfTagsDatabaseArgs) ResourceLfTagsDatabasePtrInput

type ResourceLfTagsDatabasePtrOutput added in v5.10.0

type ResourceLfTagsDatabasePtrOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsDatabasePtrOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (ResourceLfTagsDatabasePtrOutput) Elem added in v5.10.0

func (ResourceLfTagsDatabasePtrOutput) ElementType added in v5.10.0

func (ResourceLfTagsDatabasePtrOutput) Name added in v5.10.0

Name of the database resource. Unique to the Data Catalog.

The following argument is optional:

func (ResourceLfTagsDatabasePtrOutput) ToResourceLfTagsDatabasePtrOutput added in v5.10.0

func (o ResourceLfTagsDatabasePtrOutput) ToResourceLfTagsDatabasePtrOutput() ResourceLfTagsDatabasePtrOutput

func (ResourceLfTagsDatabasePtrOutput) ToResourceLfTagsDatabasePtrOutputWithContext added in v5.10.0

func (o ResourceLfTagsDatabasePtrOutput) ToResourceLfTagsDatabasePtrOutputWithContext(ctx context.Context) ResourceLfTagsDatabasePtrOutput

type ResourceLfTagsInput added in v5.10.0

type ResourceLfTagsInput interface {
	pulumi.Input

	ToResourceLfTagsOutput() ResourceLfTagsOutput
	ToResourceLfTagsOutputWithContext(ctx context.Context) ResourceLfTagsOutput
}

type ResourceLfTagsLfTag added in v5.10.0

type ResourceLfTagsLfTag struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// Key name for an existing LF-tag.
	Key string `pulumi:"key"`
	// Value from the possible values for the LF-tag.
	//
	// The following argument is optional:
	Value string `pulumi:"value"`
}

type ResourceLfTagsLfTagArgs added in v5.10.0

type ResourceLfTagsLfTagArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// Key name for an existing LF-tag.
	Key pulumi.StringInput `pulumi:"key"`
	// Value from the possible values for the LF-tag.
	//
	// The following argument is optional:
	Value pulumi.StringInput `pulumi:"value"`
}

func (ResourceLfTagsLfTagArgs) ElementType added in v5.10.0

func (ResourceLfTagsLfTagArgs) ElementType() reflect.Type

func (ResourceLfTagsLfTagArgs) ToResourceLfTagsLfTagOutput added in v5.10.0

func (i ResourceLfTagsLfTagArgs) ToResourceLfTagsLfTagOutput() ResourceLfTagsLfTagOutput

func (ResourceLfTagsLfTagArgs) ToResourceLfTagsLfTagOutputWithContext added in v5.10.0

func (i ResourceLfTagsLfTagArgs) ToResourceLfTagsLfTagOutputWithContext(ctx context.Context) ResourceLfTagsLfTagOutput

type ResourceLfTagsLfTagArray added in v5.10.0

type ResourceLfTagsLfTagArray []ResourceLfTagsLfTagInput

func (ResourceLfTagsLfTagArray) ElementType added in v5.10.0

func (ResourceLfTagsLfTagArray) ElementType() reflect.Type

func (ResourceLfTagsLfTagArray) ToResourceLfTagsLfTagArrayOutput added in v5.10.0

func (i ResourceLfTagsLfTagArray) ToResourceLfTagsLfTagArrayOutput() ResourceLfTagsLfTagArrayOutput

func (ResourceLfTagsLfTagArray) ToResourceLfTagsLfTagArrayOutputWithContext added in v5.10.0

func (i ResourceLfTagsLfTagArray) ToResourceLfTagsLfTagArrayOutputWithContext(ctx context.Context) ResourceLfTagsLfTagArrayOutput

type ResourceLfTagsLfTagArrayInput added in v5.10.0

type ResourceLfTagsLfTagArrayInput interface {
	pulumi.Input

	ToResourceLfTagsLfTagArrayOutput() ResourceLfTagsLfTagArrayOutput
	ToResourceLfTagsLfTagArrayOutputWithContext(context.Context) ResourceLfTagsLfTagArrayOutput
}

ResourceLfTagsLfTagArrayInput is an input type that accepts ResourceLfTagsLfTagArray and ResourceLfTagsLfTagArrayOutput values. You can construct a concrete instance of `ResourceLfTagsLfTagArrayInput` via:

ResourceLfTagsLfTagArray{ ResourceLfTagsLfTagArgs{...} }

type ResourceLfTagsLfTagArrayOutput added in v5.10.0

type ResourceLfTagsLfTagArrayOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsLfTagArrayOutput) ElementType added in v5.10.0

func (ResourceLfTagsLfTagArrayOutput) Index added in v5.10.0

func (ResourceLfTagsLfTagArrayOutput) ToResourceLfTagsLfTagArrayOutput added in v5.10.0

func (o ResourceLfTagsLfTagArrayOutput) ToResourceLfTagsLfTagArrayOutput() ResourceLfTagsLfTagArrayOutput

func (ResourceLfTagsLfTagArrayOutput) ToResourceLfTagsLfTagArrayOutputWithContext added in v5.10.0

func (o ResourceLfTagsLfTagArrayOutput) ToResourceLfTagsLfTagArrayOutputWithContext(ctx context.Context) ResourceLfTagsLfTagArrayOutput

type ResourceLfTagsLfTagInput added in v5.10.0

type ResourceLfTagsLfTagInput interface {
	pulumi.Input

	ToResourceLfTagsLfTagOutput() ResourceLfTagsLfTagOutput
	ToResourceLfTagsLfTagOutputWithContext(context.Context) ResourceLfTagsLfTagOutput
}

ResourceLfTagsLfTagInput is an input type that accepts ResourceLfTagsLfTagArgs and ResourceLfTagsLfTagOutput values. You can construct a concrete instance of `ResourceLfTagsLfTagInput` via:

ResourceLfTagsLfTagArgs{...}

type ResourceLfTagsLfTagOutput added in v5.10.0

type ResourceLfTagsLfTagOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsLfTagOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (ResourceLfTagsLfTagOutput) ElementType added in v5.10.0

func (ResourceLfTagsLfTagOutput) ElementType() reflect.Type

func (ResourceLfTagsLfTagOutput) Key added in v5.10.0

Key name for an existing LF-tag.

func (ResourceLfTagsLfTagOutput) ToResourceLfTagsLfTagOutput added in v5.10.0

func (o ResourceLfTagsLfTagOutput) ToResourceLfTagsLfTagOutput() ResourceLfTagsLfTagOutput

func (ResourceLfTagsLfTagOutput) ToResourceLfTagsLfTagOutputWithContext added in v5.10.0

func (o ResourceLfTagsLfTagOutput) ToResourceLfTagsLfTagOutputWithContext(ctx context.Context) ResourceLfTagsLfTagOutput

func (ResourceLfTagsLfTagOutput) Value added in v5.10.0

Value from the possible values for the LF-tag.

The following argument is optional:

type ResourceLfTagsMap added in v5.10.0

type ResourceLfTagsMap map[string]ResourceLfTagsInput

func (ResourceLfTagsMap) ElementType added in v5.10.0

func (ResourceLfTagsMap) ElementType() reflect.Type

func (ResourceLfTagsMap) ToResourceLfTagsMapOutput added in v5.10.0

func (i ResourceLfTagsMap) ToResourceLfTagsMapOutput() ResourceLfTagsMapOutput

func (ResourceLfTagsMap) ToResourceLfTagsMapOutputWithContext added in v5.10.0

func (i ResourceLfTagsMap) ToResourceLfTagsMapOutputWithContext(ctx context.Context) ResourceLfTagsMapOutput

type ResourceLfTagsMapInput added in v5.10.0

type ResourceLfTagsMapInput interface {
	pulumi.Input

	ToResourceLfTagsMapOutput() ResourceLfTagsMapOutput
	ToResourceLfTagsMapOutputWithContext(context.Context) ResourceLfTagsMapOutput
}

ResourceLfTagsMapInput is an input type that accepts ResourceLfTagsMap and ResourceLfTagsMapOutput values. You can construct a concrete instance of `ResourceLfTagsMapInput` via:

ResourceLfTagsMap{ "key": ResourceLfTagsArgs{...} }

type ResourceLfTagsMapOutput added in v5.10.0

type ResourceLfTagsMapOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsMapOutput) ElementType added in v5.10.0

func (ResourceLfTagsMapOutput) ElementType() reflect.Type

func (ResourceLfTagsMapOutput) MapIndex added in v5.10.0

func (ResourceLfTagsMapOutput) ToResourceLfTagsMapOutput added in v5.10.0

func (o ResourceLfTagsMapOutput) ToResourceLfTagsMapOutput() ResourceLfTagsMapOutput

func (ResourceLfTagsMapOutput) ToResourceLfTagsMapOutputWithContext added in v5.10.0

func (o ResourceLfTagsMapOutput) ToResourceLfTagsMapOutputWithContext(ctx context.Context) ResourceLfTagsMapOutput

type ResourceLfTagsOutput added in v5.10.0

type ResourceLfTagsOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

func (ResourceLfTagsOutput) Database added in v5.10.0

Configuration block for a database resource. See below.

func (ResourceLfTagsOutput) ElementType added in v5.10.0

func (ResourceLfTagsOutput) ElementType() reflect.Type

func (ResourceLfTagsOutput) LfTags added in v5.10.0

Set of LF-tags to attach to the resource. See below.

Exactly one of the following is required:

func (ResourceLfTagsOutput) Table added in v5.10.0

Configuration block for a table resource. See below.

func (ResourceLfTagsOutput) TableWithColumns added in v5.10.0

Configuration block for a table with columns resource. See below.

The following arguments are optional:

func (ResourceLfTagsOutput) ToResourceLfTagsOutput added in v5.10.0

func (o ResourceLfTagsOutput) ToResourceLfTagsOutput() ResourceLfTagsOutput

func (ResourceLfTagsOutput) ToResourceLfTagsOutputWithContext added in v5.10.0

func (o ResourceLfTagsOutput) ToResourceLfTagsOutputWithContext(ctx context.Context) ResourceLfTagsOutput

type ResourceLfTagsState added in v5.10.0

type ResourceLfTagsState struct {
	// Identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.
	CatalogId pulumi.StringPtrInput
	// Configuration block for a database resource. See below.
	Database ResourceLfTagsDatabasePtrInput
	// Set of LF-tags to attach to the resource. See below.
	//
	// Exactly one of the following is required:
	LfTags ResourceLfTagsLfTagArrayInput
	// Configuration block for a table resource. See below.
	Table ResourceLfTagsTablePtrInput
	// Configuration block for a table with columns resource. See below.
	//
	// The following arguments are optional:
	TableWithColumns ResourceLfTagsTableWithColumnsPtrInput
}

func (ResourceLfTagsState) ElementType added in v5.10.0

func (ResourceLfTagsState) ElementType() reflect.Type

type ResourceLfTagsTable added in v5.10.0

type ResourceLfTagsTable struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// Name of the database for the table. Unique to a Data Catalog.
	DatabaseName string `pulumi:"databaseName"`
	// Name of the table.
	Name *string `pulumi:"name"`
	// Whether to use a wildcard representing every table under a database. Defaults to `false`.
	//
	// The following arguments are optional:
	Wildcard *bool `pulumi:"wildcard"`
}

type ResourceLfTagsTableArgs added in v5.10.0

type ResourceLfTagsTableArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// Name of the database for the table. Unique to a Data Catalog.
	DatabaseName pulumi.StringInput `pulumi:"databaseName"`
	// Name of the table.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Whether to use a wildcard representing every table under a database. Defaults to `false`.
	//
	// The following arguments are optional:
	Wildcard pulumi.BoolPtrInput `pulumi:"wildcard"`
}

func (ResourceLfTagsTableArgs) ElementType added in v5.10.0

func (ResourceLfTagsTableArgs) ElementType() reflect.Type

func (ResourceLfTagsTableArgs) ToResourceLfTagsTableOutput added in v5.10.0

func (i ResourceLfTagsTableArgs) ToResourceLfTagsTableOutput() ResourceLfTagsTableOutput

func (ResourceLfTagsTableArgs) ToResourceLfTagsTableOutputWithContext added in v5.10.0

func (i ResourceLfTagsTableArgs) ToResourceLfTagsTableOutputWithContext(ctx context.Context) ResourceLfTagsTableOutput

func (ResourceLfTagsTableArgs) ToResourceLfTagsTablePtrOutput added in v5.10.0

func (i ResourceLfTagsTableArgs) ToResourceLfTagsTablePtrOutput() ResourceLfTagsTablePtrOutput

func (ResourceLfTagsTableArgs) ToResourceLfTagsTablePtrOutputWithContext added in v5.10.0

func (i ResourceLfTagsTableArgs) ToResourceLfTagsTablePtrOutputWithContext(ctx context.Context) ResourceLfTagsTablePtrOutput

type ResourceLfTagsTableInput added in v5.10.0

type ResourceLfTagsTableInput interface {
	pulumi.Input

	ToResourceLfTagsTableOutput() ResourceLfTagsTableOutput
	ToResourceLfTagsTableOutputWithContext(context.Context) ResourceLfTagsTableOutput
}

ResourceLfTagsTableInput is an input type that accepts ResourceLfTagsTableArgs and ResourceLfTagsTableOutput values. You can construct a concrete instance of `ResourceLfTagsTableInput` via:

ResourceLfTagsTableArgs{...}

type ResourceLfTagsTableOutput added in v5.10.0

type ResourceLfTagsTableOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsTableOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (ResourceLfTagsTableOutput) DatabaseName added in v5.10.0

Name of the database for the table. Unique to a Data Catalog.

func (ResourceLfTagsTableOutput) ElementType added in v5.10.0

func (ResourceLfTagsTableOutput) ElementType() reflect.Type

func (ResourceLfTagsTableOutput) Name added in v5.10.0

Name of the table.

func (ResourceLfTagsTableOutput) ToResourceLfTagsTableOutput added in v5.10.0

func (o ResourceLfTagsTableOutput) ToResourceLfTagsTableOutput() ResourceLfTagsTableOutput

func (ResourceLfTagsTableOutput) ToResourceLfTagsTableOutputWithContext added in v5.10.0

func (o ResourceLfTagsTableOutput) ToResourceLfTagsTableOutputWithContext(ctx context.Context) ResourceLfTagsTableOutput

func (ResourceLfTagsTableOutput) ToResourceLfTagsTablePtrOutput added in v5.10.0

func (o ResourceLfTagsTableOutput) ToResourceLfTagsTablePtrOutput() ResourceLfTagsTablePtrOutput

func (ResourceLfTagsTableOutput) ToResourceLfTagsTablePtrOutputWithContext added in v5.10.0

func (o ResourceLfTagsTableOutput) ToResourceLfTagsTablePtrOutputWithContext(ctx context.Context) ResourceLfTagsTablePtrOutput

func (ResourceLfTagsTableOutput) Wildcard added in v5.10.0

Whether to use a wildcard representing every table under a database. Defaults to `false`.

The following arguments are optional:

type ResourceLfTagsTablePtrInput added in v5.10.0

type ResourceLfTagsTablePtrInput interface {
	pulumi.Input

	ToResourceLfTagsTablePtrOutput() ResourceLfTagsTablePtrOutput
	ToResourceLfTagsTablePtrOutputWithContext(context.Context) ResourceLfTagsTablePtrOutput
}

ResourceLfTagsTablePtrInput is an input type that accepts ResourceLfTagsTableArgs, ResourceLfTagsTablePtr and ResourceLfTagsTablePtrOutput values. You can construct a concrete instance of `ResourceLfTagsTablePtrInput` via:

        ResourceLfTagsTableArgs{...}

or:

        nil

func ResourceLfTagsTablePtr added in v5.10.0

func ResourceLfTagsTablePtr(v *ResourceLfTagsTableArgs) ResourceLfTagsTablePtrInput

type ResourceLfTagsTablePtrOutput added in v5.10.0

type ResourceLfTagsTablePtrOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsTablePtrOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (ResourceLfTagsTablePtrOutput) DatabaseName added in v5.10.0

Name of the database for the table. Unique to a Data Catalog.

func (ResourceLfTagsTablePtrOutput) Elem added in v5.10.0

func (ResourceLfTagsTablePtrOutput) ElementType added in v5.10.0

func (ResourceLfTagsTablePtrOutput) Name added in v5.10.0

Name of the table.

func (ResourceLfTagsTablePtrOutput) ToResourceLfTagsTablePtrOutput added in v5.10.0

func (o ResourceLfTagsTablePtrOutput) ToResourceLfTagsTablePtrOutput() ResourceLfTagsTablePtrOutput

func (ResourceLfTagsTablePtrOutput) ToResourceLfTagsTablePtrOutputWithContext added in v5.10.0

func (o ResourceLfTagsTablePtrOutput) ToResourceLfTagsTablePtrOutputWithContext(ctx context.Context) ResourceLfTagsTablePtrOutput

func (ResourceLfTagsTablePtrOutput) Wildcard added in v5.10.0

Whether to use a wildcard representing every table under a database. Defaults to `false`.

The following arguments are optional:

type ResourceLfTagsTableWithColumns added in v5.10.0

type ResourceLfTagsTableWithColumns struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId *string `pulumi:"catalogId"`
	// Set of column names for the table.
	ColumnNames []string `pulumi:"columnNames"`
	// Name of the database for the table with columns resource. Unique to the Data Catalog.
	DatabaseName string `pulumi:"databaseName"`
	// Set of column names for the table to exclude. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.
	ExcludedColumnNames []string `pulumi:"excludedColumnNames"`
	// Name of the table resource.
	Name string `pulumi:"name"`
	// Whether to use a column wildcard. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.
	//
	// The following arguments are optional:
	Wildcard *bool `pulumi:"wildcard"`
}

type ResourceLfTagsTableWithColumnsArgs added in v5.10.0

type ResourceLfTagsTableWithColumnsArgs struct {
	// Identifier for the Data Catalog. By default, it is the account ID of the caller.
	CatalogId pulumi.StringPtrInput `pulumi:"catalogId"`
	// Set of column names for the table.
	ColumnNames pulumi.StringArrayInput `pulumi:"columnNames"`
	// Name of the database for the table with columns resource. Unique to the Data Catalog.
	DatabaseName pulumi.StringInput `pulumi:"databaseName"`
	// Set of column names for the table to exclude. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.
	ExcludedColumnNames pulumi.StringArrayInput `pulumi:"excludedColumnNames"`
	// Name of the table resource.
	Name pulumi.StringInput `pulumi:"name"`
	// Whether to use a column wildcard. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.
	//
	// The following arguments are optional:
	Wildcard pulumi.BoolPtrInput `pulumi:"wildcard"`
}

func (ResourceLfTagsTableWithColumnsArgs) ElementType added in v5.10.0

func (ResourceLfTagsTableWithColumnsArgs) ToResourceLfTagsTableWithColumnsOutput added in v5.10.0

func (i ResourceLfTagsTableWithColumnsArgs) ToResourceLfTagsTableWithColumnsOutput() ResourceLfTagsTableWithColumnsOutput

func (ResourceLfTagsTableWithColumnsArgs) ToResourceLfTagsTableWithColumnsOutputWithContext added in v5.10.0

func (i ResourceLfTagsTableWithColumnsArgs) ToResourceLfTagsTableWithColumnsOutputWithContext(ctx context.Context) ResourceLfTagsTableWithColumnsOutput

func (ResourceLfTagsTableWithColumnsArgs) ToResourceLfTagsTableWithColumnsPtrOutput added in v5.10.0

func (i ResourceLfTagsTableWithColumnsArgs) ToResourceLfTagsTableWithColumnsPtrOutput() ResourceLfTagsTableWithColumnsPtrOutput

func (ResourceLfTagsTableWithColumnsArgs) ToResourceLfTagsTableWithColumnsPtrOutputWithContext added in v5.10.0

func (i ResourceLfTagsTableWithColumnsArgs) ToResourceLfTagsTableWithColumnsPtrOutputWithContext(ctx context.Context) ResourceLfTagsTableWithColumnsPtrOutput

type ResourceLfTagsTableWithColumnsInput added in v5.10.0

type ResourceLfTagsTableWithColumnsInput interface {
	pulumi.Input

	ToResourceLfTagsTableWithColumnsOutput() ResourceLfTagsTableWithColumnsOutput
	ToResourceLfTagsTableWithColumnsOutputWithContext(context.Context) ResourceLfTagsTableWithColumnsOutput
}

ResourceLfTagsTableWithColumnsInput is an input type that accepts ResourceLfTagsTableWithColumnsArgs and ResourceLfTagsTableWithColumnsOutput values. You can construct a concrete instance of `ResourceLfTagsTableWithColumnsInput` via:

ResourceLfTagsTableWithColumnsArgs{...}

type ResourceLfTagsTableWithColumnsOutput added in v5.10.0

type ResourceLfTagsTableWithColumnsOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsTableWithColumnsOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (ResourceLfTagsTableWithColumnsOutput) ColumnNames added in v5.10.0

Set of column names for the table.

func (ResourceLfTagsTableWithColumnsOutput) DatabaseName added in v5.10.0

Name of the database for the table with columns resource. Unique to the Data Catalog.

func (ResourceLfTagsTableWithColumnsOutput) ElementType added in v5.10.0

func (ResourceLfTagsTableWithColumnsOutput) ExcludedColumnNames added in v5.10.0

Set of column names for the table to exclude. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.

func (ResourceLfTagsTableWithColumnsOutput) Name added in v5.10.0

Name of the table resource.

func (ResourceLfTagsTableWithColumnsOutput) ToResourceLfTagsTableWithColumnsOutput added in v5.10.0

func (o ResourceLfTagsTableWithColumnsOutput) ToResourceLfTagsTableWithColumnsOutput() ResourceLfTagsTableWithColumnsOutput

func (ResourceLfTagsTableWithColumnsOutput) ToResourceLfTagsTableWithColumnsOutputWithContext added in v5.10.0

func (o ResourceLfTagsTableWithColumnsOutput) ToResourceLfTagsTableWithColumnsOutputWithContext(ctx context.Context) ResourceLfTagsTableWithColumnsOutput

func (ResourceLfTagsTableWithColumnsOutput) ToResourceLfTagsTableWithColumnsPtrOutput added in v5.10.0

func (o ResourceLfTagsTableWithColumnsOutput) ToResourceLfTagsTableWithColumnsPtrOutput() ResourceLfTagsTableWithColumnsPtrOutput

func (ResourceLfTagsTableWithColumnsOutput) ToResourceLfTagsTableWithColumnsPtrOutputWithContext added in v5.10.0

func (o ResourceLfTagsTableWithColumnsOutput) ToResourceLfTagsTableWithColumnsPtrOutputWithContext(ctx context.Context) ResourceLfTagsTableWithColumnsPtrOutput

func (ResourceLfTagsTableWithColumnsOutput) Wildcard added in v5.10.0

Whether to use a column wildcard. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.

The following arguments are optional:

type ResourceLfTagsTableWithColumnsPtrInput added in v5.10.0

type ResourceLfTagsTableWithColumnsPtrInput interface {
	pulumi.Input

	ToResourceLfTagsTableWithColumnsPtrOutput() ResourceLfTagsTableWithColumnsPtrOutput
	ToResourceLfTagsTableWithColumnsPtrOutputWithContext(context.Context) ResourceLfTagsTableWithColumnsPtrOutput
}

ResourceLfTagsTableWithColumnsPtrInput is an input type that accepts ResourceLfTagsTableWithColumnsArgs, ResourceLfTagsTableWithColumnsPtr and ResourceLfTagsTableWithColumnsPtrOutput values. You can construct a concrete instance of `ResourceLfTagsTableWithColumnsPtrInput` via:

        ResourceLfTagsTableWithColumnsArgs{...}

or:

        nil

type ResourceLfTagsTableWithColumnsPtrOutput added in v5.10.0

type ResourceLfTagsTableWithColumnsPtrOutput struct{ *pulumi.OutputState }

func (ResourceLfTagsTableWithColumnsPtrOutput) CatalogId added in v5.10.0

Identifier for the Data Catalog. By default, it is the account ID of the caller.

func (ResourceLfTagsTableWithColumnsPtrOutput) ColumnNames added in v5.10.0

Set of column names for the table.

func (ResourceLfTagsTableWithColumnsPtrOutput) DatabaseName added in v5.10.0

Name of the database for the table with columns resource. Unique to the Data Catalog.

func (ResourceLfTagsTableWithColumnsPtrOutput) Elem added in v5.10.0

func (ResourceLfTagsTableWithColumnsPtrOutput) ElementType added in v5.10.0

func (ResourceLfTagsTableWithColumnsPtrOutput) ExcludedColumnNames added in v5.10.0

Set of column names for the table to exclude. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.

func (ResourceLfTagsTableWithColumnsPtrOutput) Name added in v5.10.0

Name of the table resource.

func (ResourceLfTagsTableWithColumnsPtrOutput) ToResourceLfTagsTableWithColumnsPtrOutput added in v5.10.0

func (o ResourceLfTagsTableWithColumnsPtrOutput) ToResourceLfTagsTableWithColumnsPtrOutput() ResourceLfTagsTableWithColumnsPtrOutput

func (ResourceLfTagsTableWithColumnsPtrOutput) ToResourceLfTagsTableWithColumnsPtrOutputWithContext added in v5.10.0

func (o ResourceLfTagsTableWithColumnsPtrOutput) ToResourceLfTagsTableWithColumnsPtrOutputWithContext(ctx context.Context) ResourceLfTagsTableWithColumnsPtrOutput

func (ResourceLfTagsTableWithColumnsPtrOutput) Wildcard added in v5.10.0

Whether to use a column wildcard. If `excludedColumnNames` is included, `wildcard` must be set to `true` to avoid the provider reporting a difference.

The following arguments are optional:

type ResourceMap

type ResourceMap map[string]ResourceInput

func (ResourceMap) ElementType

func (ResourceMap) ElementType() reflect.Type

func (ResourceMap) ToResourceMapOutput

func (i ResourceMap) ToResourceMapOutput() ResourceMapOutput

func (ResourceMap) ToResourceMapOutputWithContext

func (i ResourceMap) ToResourceMapOutputWithContext(ctx context.Context) ResourceMapOutput

type ResourceMapInput

type ResourceMapInput interface {
	pulumi.Input

	ToResourceMapOutput() ResourceMapOutput
	ToResourceMapOutputWithContext(context.Context) ResourceMapOutput
}

ResourceMapInput is an input type that accepts ResourceMap and ResourceMapOutput values. You can construct a concrete instance of `ResourceMapInput` via:

ResourceMap{ "key": ResourceArgs{...} }

type ResourceMapOutput

type ResourceMapOutput struct{ *pulumi.OutputState }

func (ResourceMapOutput) ElementType

func (ResourceMapOutput) ElementType() reflect.Type

func (ResourceMapOutput) MapIndex

func (ResourceMapOutput) ToResourceMapOutput

func (o ResourceMapOutput) ToResourceMapOutput() ResourceMapOutput

func (ResourceMapOutput) ToResourceMapOutputWithContext

func (o ResourceMapOutput) ToResourceMapOutputWithContext(ctx context.Context) ResourceMapOutput

type ResourceOutput

type ResourceOutput struct{ *pulumi.OutputState }

func (ResourceOutput) Arn added in v5.4.0

Amazon Resource Name (ARN) of the resource, an S3 path.

func (ResourceOutput) ElementType

func (ResourceOutput) ElementType() reflect.Type

func (ResourceOutput) LastModified added in v5.4.0

func (o ResourceOutput) LastModified() pulumi.StringOutput

(Optional) The date and time the resource was last modified in [RFC 3339 format](https://tools.ietf.org/html/rfc3339#section-5.8).

func (ResourceOutput) RoleArn added in v5.4.0

func (o ResourceOutput) RoleArn() pulumi.StringOutput

Role that has read/write access to the resource. If not provided, the Lake Formation service-linked role must exist and is used.

> **NOTE:** AWS does not support registering an S3 location with an IAM role and subsequently updating the S3 location registration to a service-linked role.

func (ResourceOutput) ToResourceOutput

func (o ResourceOutput) ToResourceOutput() ResourceOutput

func (ResourceOutput) ToResourceOutputWithContext

func (o ResourceOutput) ToResourceOutputWithContext(ctx context.Context) ResourceOutput

type ResourceState

type ResourceState struct {
	// Amazon Resource Name (ARN) of the resource, an S3 path.
	Arn pulumi.StringPtrInput
	// (Optional) The date and time the resource was last modified in [RFC 3339 format](https://tools.ietf.org/html/rfc3339#section-5.8).
	LastModified pulumi.StringPtrInput
	// Role that has read/write access to the resource. If not provided, the Lake Formation service-linked role must exist and is used.
	//
	// > **NOTE:** AWS does not support registering an S3 location with an IAM role and subsequently updating the S3 location registration to a service-linked role.
	RoleArn pulumi.StringPtrInput
}

func (ResourceState) ElementType

func (ResourceState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL