Class: AWSCDK::LakeFormation::CfnPrincipalPermissionsProps

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

Overview

Properties for defining a CfnPrincipalPermissions.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(permissions:, permissions_with_grant_option:, principal:, resource:, catalog: nil) ⇒ CfnPrincipalPermissionsProps

Returns a new instance of CfnPrincipalPermissionsProps.

Parameters:



14
15
16
17
18
19
20
21
22
23
24
25
# File 'lake_formation/cfn_principal_permissions_props.rb', line 14

def initialize(permissions:, permissions_with_grant_option:, principal:, resource:, catalog: nil)
  @permissions = permissions
  Jsii::Type.check_type(@permissions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "permissions")
  @permissions_with_grant_option = permissions_with_grant_option
  Jsii::Type.check_type(@permissions_with_grant_option, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "permissionsWithGrantOption")
  @principal = principal.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::DataLakePrincipalProperty.new(**principal.transform_keys(&:to_sym)) : principal
  Jsii::Type.check_type(@principal, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLkRhdGFMYWtlUHJpbmNpcGFsUHJvcGVydHkifV19fQ==")), "principal")
  @resource = resource.is_a?(Hash) ? ::AWSCDK::LakeFormation::CfnPrincipalPermissions::ResourceProperty.new(**resource.transform_keys(&:to_sym)) : resource
  Jsii::Type.check_type(@resource, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19sYWtlZm9ybWF0aW9uLkNmblByaW5jaXBhbFBlcm1pc3Npb25zLlJlc291cmNlUHJvcGVydHkifV19fQ==")), "resource")
  @catalog = catalog
  Jsii::Type.check_type(@catalog, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "catalog") unless @catalog.nil?
end

Instance Attribute Details

#catalogString? (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 Lake Formation environment.



53
54
55
# File 'lake_formation/cfn_principal_permissions_props.rb', line 53

def catalog
  @catalog
end

#permissionsArray<String> (readonly)

The permissions granted or revoked.



31
32
33
# File 'lake_formation/cfn_principal_permissions_props.rb', line 31

def permissions
  @permissions
end

#permissions_with_grant_optionArray<String> (readonly)

Indicates the ability to grant permissions (as a subset of permissions granted).



36
37
38
# File 'lake_formation/cfn_principal_permissions_props.rb', line 36

def permissions_with_grant_option
  @permissions_with_grant_option
end

Class Method Details

.jsii_propertiesObject



55
56
57
58
59
60
61
62
63
# File 'lake_formation/cfn_principal_permissions_props.rb', line 55

def self.jsii_properties
  {
    :permissions => "permissions",
    :permissions_with_grant_option => "permissionsWithGrantOption",
    :principal => "principal",
    :resource => "resource",
    :catalog => "catalog",
  }
end

Instance Method Details

#to_jsiiObject



65
66
67
68
69
70
71
72
73
74
75
# File 'lake_formation/cfn_principal_permissions_props.rb', line 65

def to_jsii
  result = {}
  result.merge!({
    "permissions" => @permissions,
    "permissionsWithGrantOption" => @permissions_with_grant_option,
    "principal" => @principal,
    "resource" => @resource,
    "catalog" => @catalog,
  })
  result.compact
end