CfnCatalogPropsMixin

class aws_cdk.cfn_property_mixins.aws_glue.CfnCatalogPropsMixin(props, *, strategy=None)

Bases: Mixin

Creates a catalog in the Glue Data Catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-catalog.html

CloudformationResource:

AWS::Glue::Catalog

Mixin:

true

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.cfn_property_mixins import aws_glue as glue
import aws_cdk as cdk

# merge_strategy: cdk.IMergeStrategy

cfn_catalog_props_mixin = glue.CfnCatalogPropsMixin(glue.CfnCatalogMixinProps(
    allow_full_table_external_data_access="allowFullTableExternalDataAccess",
    catalog_properties=glue.CfnCatalogPropsMixin.CatalogPropertiesProperty(
        custom_properties={
            "custom_properties_key": "customProperties"
        },
        data_lake_access_properties=glue.CfnCatalogPropsMixin.DataLakeAccessPropertiesProperty(
            allow_full_table_external_data_access="allowFullTableExternalDataAccess",
            catalog_type="catalogType",
            data_lake_access=False,
            data_transfer_role="dataTransferRole",
            kms_key="kmsKey",
            managed_workgroup_name="managedWorkgroupName",
            managed_workgroup_status="managedWorkgroupStatus",
            redshift_database_name="redshiftDatabaseName"
        )
    ),
    create_database_default_permissions=[glue.CfnCatalogPropsMixin.PrincipalPermissionsProperty(
        permissions=["permissions"],
        principal=glue.CfnCatalogPropsMixin.DataLakePrincipalProperty(
            data_lake_principal_identifier="dataLakePrincipalIdentifier"
        )
    )],
    create_table_default_permissions=[glue.CfnCatalogPropsMixin.PrincipalPermissionsProperty(
        permissions=["permissions"],
        principal=glue.CfnCatalogPropsMixin.DataLakePrincipalProperty(
            data_lake_principal_identifier="dataLakePrincipalIdentifier"
        )
    )],
    description="description",
    federated_catalog=glue.CfnCatalogPropsMixin.FederatedCatalogProperty(
        connection_name="connectionName",
        identifier="identifier"
    ),
    name="name",
    overwrite_child_resource_permissions_with_default="overwriteChildResourcePermissionsWithDefault",
    parameters={
        "parameters_key": "parameters"
    },
    tags=[cdk.CfnTag(
        key="key",
        value="value"
    )],
    target_redshift_catalog=glue.CfnCatalogPropsMixin.TargetRedshiftCatalogProperty(
        catalog_arn="catalogArn"
    )
),
    strategy=merge_strategy
)

Create a mixin to apply properties to AWS::Glue::Catalog.

Parameters:
  • props (Union[CfnCatalogMixinProps, Dict[str, Any]]) – L1 properties to apply.

  • strategy (Optional[IMergeStrategy]) – Strategy for merging nested properties. Default: - PropertyMergeStrategy.combine()

Methods

apply_to(construct)

Apply the mixin properties to the construct.

Parameters:

construct (IConstruct)

Return type:

None

supports(construct)

Check if this mixin supports the given construct.

Parameters:

construct (IConstruct)

Return type:

bool

Attributes

CFN_PROPERTY_KEYS = ['allowFullTableExternalDataAccess', 'catalogProperties', 'createDatabaseDefaultPermissions', 'createTableDefaultPermissions', 'description', 'federatedCatalog', 'name', 'overwriteChildResourcePermissionsWithDefault', 'parameters', 'tags', 'targetRedshiftCatalog']

Static Methods

classmethod is_mixin(x)

Checks if x is a Mixin.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Mixin.

CatalogPropertiesProperty

class CfnCatalogPropsMixin.CatalogPropertiesProperty(*, custom_properties=None, data_lake_access_properties=None)

Bases: object

A structure that specifies data lake access properties and other custom properties.

Parameters:
  • custom_properties (Union[Mapping[str, str], IResolvable, None]) – Additional key-value properties for the catalog.

  • data_lake_access_properties (Union[IResolvable, DataLakeAccessPropertiesProperty, Dict[str, Any], None]) – Data lake access properties for the catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-catalogproperties.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.cfn_property_mixins import aws_glue as glue

catalog_properties_property = glue.CfnCatalogPropsMixin.CatalogPropertiesProperty(
    custom_properties={
        "custom_properties_key": "customProperties"
    },
    data_lake_access_properties=glue.CfnCatalogPropsMixin.DataLakeAccessPropertiesProperty(
        allow_full_table_external_data_access="allowFullTableExternalDataAccess",
        catalog_type="catalogType",
        data_lake_access=False,
        data_transfer_role="dataTransferRole",
        kms_key="kmsKey",
        managed_workgroup_name="managedWorkgroupName",
        managed_workgroup_status="managedWorkgroupStatus",
        redshift_database_name="redshiftDatabaseName"
    )
)

Attributes

custom_properties

Additional key-value properties for the catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-catalogproperties.html#cfn-glue-catalog-catalogproperties-customproperties

data_lake_access_properties

Data lake access properties for the catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-catalogproperties.html#cfn-glue-catalog-catalogproperties-datalakeaccessproperties

DataLakeAccessPropertiesProperty

class CfnCatalogPropsMixin.DataLakeAccessPropertiesProperty(*, allow_full_table_external_data_access=None, catalog_type=None, data_lake_access=None, data_transfer_role=None, kms_key=None, managed_workgroup_name=None, managed_workgroup_status=None, redshift_database_name=None)

Bases: object

Data lake access properties for the catalog.

Parameters:
  • allow_full_table_external_data_access (Optional[str]) – Allows third-party engines to access data in Amazon S3 locations that are registered with Lake Formation.

  • catalog_type (Optional[str]) – Specifies a federated catalog type for the native catalog resource.

  • data_lake_access (Union[bool, IResolvable, None]) – Turns on or off data lake access for Apache Spark applications that access Amazon Redshift databases in the Data Catalog from any non-Redshift engine.

  • data_transfer_role (Optional[str]) – A role that will be assumed by Glue for transferring data into/out of the staging bucket during a query.

  • kms_key (Optional[str]) – An encryption key that will be used for the staging bucket that will be created along with the catalog.

  • managed_workgroup_name (Optional[str]) – The name of the managed workgroup associated with the catalog.

  • managed_workgroup_status (Optional[str]) – The status of the managed workgroup.

  • redshift_database_name (Optional[str]) – The name of the Redshift database.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.cfn_property_mixins import aws_glue as glue

data_lake_access_properties_property = glue.CfnCatalogPropsMixin.DataLakeAccessPropertiesProperty(
    allow_full_table_external_data_access="allowFullTableExternalDataAccess",
    catalog_type="catalogType",
    data_lake_access=False,
    data_transfer_role="dataTransferRole",
    kms_key="kmsKey",
    managed_workgroup_name="managedWorkgroupName",
    managed_workgroup_status="managedWorkgroupStatus",
    redshift_database_name="redshiftDatabaseName"
)

Attributes

allow_full_table_external_data_access

Allows third-party engines to access data in Amazon S3 locations that are registered with Lake Formation.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html#cfn-glue-catalog-datalakeaccessproperties-allowfulltableexternaldataaccess

catalog_type

Specifies a federated catalog type for the native catalog resource.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html#cfn-glue-catalog-datalakeaccessproperties-catalogtype

data_lake_access

Turns on or off data lake access for Apache Spark applications that access Amazon Redshift databases in the Data Catalog from any non-Redshift engine.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html#cfn-glue-catalog-datalakeaccessproperties-datalakeaccess

data_transfer_role

A role that will be assumed by Glue for transferring data into/out of the staging bucket during a query.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html#cfn-glue-catalog-datalakeaccessproperties-datatransferrole

kms_key

An encryption key that will be used for the staging bucket that will be created along with the catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html#cfn-glue-catalog-datalakeaccessproperties-kmskey

managed_workgroup_name

The name of the managed workgroup associated with the catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html#cfn-glue-catalog-datalakeaccessproperties-managedworkgroupname

managed_workgroup_status

The status of the managed workgroup.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html#cfn-glue-catalog-datalakeaccessproperties-managedworkgroupstatus

redshift_database_name

The name of the Redshift database.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeaccessproperties.html#cfn-glue-catalog-datalakeaccessproperties-redshiftdatabasename

DataLakePrincipalProperty

class CfnCatalogPropsMixin.DataLakePrincipalProperty(*, data_lake_principal_identifier=None)

Bases: object

The Lake Formation principal.

Parameters:

data_lake_principal_identifier (Optional[str]) – An identifier for the Lake Formation principal.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeprincipal.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.cfn_property_mixins import aws_glue as glue

data_lake_principal_property = glue.CfnCatalogPropsMixin.DataLakePrincipalProperty(
    data_lake_principal_identifier="dataLakePrincipalIdentifier"
)

Attributes

data_lake_principal_identifier

An identifier for the Lake Formation principal.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-datalakeprincipal.html#cfn-glue-catalog-datalakeprincipal-datalakeprincipalidentifier

FederatedCatalogProperty

class CfnCatalogPropsMixin.FederatedCatalogProperty(*, connection_name=None, identifier=None)

Bases: object

A FederatedCatalog structure that references an entity outside the Glue Data Catalog.

Parameters:
  • connection_name (Optional[str]) – The name of the connection to an external data source.

  • identifier (Optional[str]) – A unique identifier for the federated catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-federatedcatalog.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.cfn_property_mixins import aws_glue as glue

federated_catalog_property = glue.CfnCatalogPropsMixin.FederatedCatalogProperty(
    connection_name="connectionName",
    identifier="identifier"
)

Attributes

connection_name

The name of the connection to an external data source.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-federatedcatalog.html#cfn-glue-catalog-federatedcatalog-connectionname

identifier

A unique identifier for the federated catalog.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-federatedcatalog.html#cfn-glue-catalog-federatedcatalog-identifier

PrincipalPermissionsProperty

class CfnCatalogPropsMixin.PrincipalPermissionsProperty(*, permissions=None, principal=None)

Bases: object

Permissions granted to a principal.

Parameters:
  • permissions (Optional[Sequence[str]]) – The permissions that are granted to the principal.

  • principal (Union[IResolvable, DataLakePrincipalProperty, Dict[str, Any], None]) – The Lake Formation principal.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-principalpermissions.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.cfn_property_mixins import aws_glue as glue

principal_permissions_property = glue.CfnCatalogPropsMixin.PrincipalPermissionsProperty(
    permissions=["permissions"],
    principal=glue.CfnCatalogPropsMixin.DataLakePrincipalProperty(
        data_lake_principal_identifier="dataLakePrincipalIdentifier"
    )
)

Attributes

permissions

The permissions that are granted to the principal.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-principalpermissions.html#cfn-glue-catalog-principalpermissions-permissions

principal

The Lake Formation principal.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-principalpermissions.html#cfn-glue-catalog-principalpermissions-principal

TargetRedshiftCatalogProperty

class CfnCatalogPropsMixin.TargetRedshiftCatalogProperty(*, catalog_arn=None)

Bases: object

A structure that describes a target catalog for resource linking.

Parameters:

catalog_arn (Optional[str]) – The Amazon Resource Name (ARN) of the catalog resource.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-targetredshiftcatalog.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.cfn_property_mixins import aws_glue as glue

target_redshift_catalog_property = glue.CfnCatalogPropsMixin.TargetRedshiftCatalogProperty(
    catalog_arn="catalogArn"
)

Attributes

catalog_arn

The Amazon Resource Name (ARN) of the catalog resource.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-catalog-targetredshiftcatalog.html#cfn-glue-catalog-targetredshiftcatalog-catalogarn