Class: AWSCDK::LakeFormation::CfnPrincipalPermissions::ResourceProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
lake_formation/cfn_principal_permissions.rb

Overview

A structure for the resource.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(catalog: nil, database: nil, data_cells_filter: nil, data_location: nil, lf_tag: nil, lf_tag_policy: nil, table: nil, table_with_columns: nil) ⇒ ResourceProperty

Returns a new instance of ResourceProperty.

Parameters:



949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
# File 'lake_formation/cfn_principal_permissions.rb', line 949

def initialize(catalog: nil, database: nil, data_cells_filter: nil, data_location: nil, lf_tag: nil, lf_tag_policy: nil, table: nil, table_with_columns: nil)
  @catalog = catalog
  Jsii::Type.check_type(@catalog, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "catalog") unless @catalog.nil?
  @database = database.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::DatabaseResourceProperty.new(**database.transform_keys(&:to_sym)) : database
  Jsii::Type.check_type(@database, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLkRhdGFiYXNlUmVzb3VyY2VQcm9wZXJ0eSJ9XX19")), "database") unless @database.nil?
  @data_cells_filter = data_cells_filter.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::DataCellsFilterResourceProperty.new(**data_cells_filter.transform_keys(&:to_sym)) : data_cells_filter
  Jsii::Type.check_type(@data_cells_filter, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLkRhdGFDZWxsc0ZpbHRlclJlc291cmNlUHJvcGVydHkifV19fQ==")), "dataCellsFilter") unless @data_cells_filter.nil?
  @data_location = data_location.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::DataLocationResourceProperty.new(**data_location.transform_keys(&:to_sym)) : data_location
  Jsii::Type.check_type(@data_location, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLkRhdGFMb2NhdGlvblJlc291cmNlUHJvcGVydHkifV19fQ==")), "dataLocation") unless @data_location.nil?
  @lf_tag = lf_tag.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::LFTagKeyResourceProperty.new(**lf_tag.transform_keys(&:to_sym)) : lf_tag
  Jsii::Type.check_type(@lf_tag, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLkxGVGFnS2V5UmVzb3VyY2VQcm9wZXJ0eSJ9XX19")), "lfTag") unless @lf_tag.nil?
  @lf_tag_policy = lf_tag_policy.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::LFTagPolicyResourceProperty.new(**lf_tag_policy.transform_keys(&:to_sym)) : lf_tag_policy
  Jsii::Type.check_type(@lf_tag_policy, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLkxGVGFnUG9saWN5UmVzb3VyY2VQcm9wZXJ0eSJ9XX19")), "lfTagPolicy") unless @lf_tag_policy.nil?
  @table = table.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::TableResourceProperty.new(**table.transform_keys(&:to_sym)) : table
  Jsii::Type.check_type(@table, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLlRhYmxlUmVzb3VyY2VQcm9wZXJ0eSJ9XX19")), "table") unless @table.nil?
  @table_with_columns = table_with_columns.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::TableWithColumnsResourceProperty.new(**table_with_columns.transform_keys(&:to_sym)) : table_with_columns
  Jsii::Type.check_type(@table_with_columns, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLlRhYmxlV2l0aENvbHVtbnNSZXNvdXJjZVByb3BlcnR5In1dfX0=")), "tableWithColumns") unless @table_with_columns.nil?
end

Instance Attribute Details

#catalogObject? (readonly)

The 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 AWS Lake Formation environment.



974
975
976
# File 'lake_formation/cfn_principal_permissions.rb', line 974

def catalog
  @catalog
end

#data_cells_filterAWSCDK::IResolvable, ... (readonly)

A data cell filter.



986
987
988
# File 'lake_formation/cfn_principal_permissions.rb', line 986

def data_cells_filter
  @data_cells_filter
end

#data_locationAWSCDK::IResolvable, ... (readonly)

The location of an Amazon S3 path where permissions are granted or revoked.



991
992
993
# File 'lake_formation/cfn_principal_permissions.rb', line 991

def data_location
  @data_location
end

#databaseAWSCDK::IResolvable, ... (readonly)

The database for the resource.

Unique to the Data Catalog. A database is a set of associated table definitions organized into a logical group. You can Grant and Revoke database permissions to a principal.



981
982
983
# File 'lake_formation/cfn_principal_permissions.rb', line 981

def database
  @database
end

#lf_tagAWSCDK::IResolvable, ... (readonly)

The LF-tag key and values attached to a resource.



996
997
998
# File 'lake_formation/cfn_principal_permissions.rb', line 996

def lf_tag
  @lf_tag
end

#lf_tag_policyAWSCDK::IResolvable, ... (readonly)

A list of LF-tag conditions that define a resource's LF-tag policy.



1001
1002
1003
# File 'lake_formation/cfn_principal_permissions.rb', line 1001

def lf_tag_policy
  @lf_tag_policy
end

#tableAWSCDK::IResolvable, ... (readonly)

The table for the resource.

A table is a metadata definition that represents your data. You can Grant and Revoke table privileges to a principal.



1008
1009
1010
# File 'lake_formation/cfn_principal_permissions.rb', line 1008

def table
  @table
end

#table_with_columnsAWSCDK::IResolvable, ... (readonly)

The table with columns for the resource.

A principal with permissions to this resource can select metadata from the columns of a table in the Data Catalog and the underlying data in Amazon S3.



1015
1016
1017
# File 'lake_formation/cfn_principal_permissions.rb', line 1015

def table_with_columns
  @table_with_columns
end

Class Method Details

.jsii_propertiesObject



1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
# File 'lake_formation/cfn_principal_permissions.rb', line 1017

def self.jsii_properties
  {
    :catalog => "catalog",
    :database => "database",
    :data_cells_filter => "dataCellsFilter",
    :data_location => "dataLocation",
    :lf_tag => "lfTag",
    :lf_tag_policy => "lfTagPolicy",
    :table => "table",
    :table_with_columns => "tableWithColumns",
  }
end

Instance Method Details

#to_jsiiObject



1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
# File 'lake_formation/cfn_principal_permissions.rb', line 1030

def to_jsii
  result = {}
  result.merge!({
    "catalog" => @catalog,
    "database" => @database,
    "dataCellsFilter" => @data_cells_filter,
    "dataLocation" => @data_location,
    "lfTag" => @lf_tag,
    "lfTagPolicy" => @lf_tag_policy,
    "table" => @table,
    "tableWithColumns" => @table_with_columns,
  })
  result.compact
end