Class: AWSCDK::CleanRooms::CfnCollaborationProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
clean_rooms/cfn_collaboration_props.rb

Overview

Properties for defining a CfnCollaboration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(creator_display_name:, description:, name:, query_log_status:, allowed_result_regions: nil, analytics_engine: nil, auto_approved_change_types: nil, creator_member_abilities: nil, creator_ml_member_abilities: nil, creator_payment_configuration: nil, data_encryption_metadata: nil, is_metrics_enabled: nil, job_log_status: nil, members: nil, tags: nil) ⇒ CfnCollaborationProps

Returns a new instance of CfnCollaborationProps.

Parameters:

  • creator_display_name (String)

    A display name of the collaboration creator.

  • description (String)

    A description of the collaboration provided by the collaboration owner.

  • name (String)

    A human-readable identifier provided by the collaboration owner.

  • query_log_status (String)

    An indicator as to whether query logging has been enabled or disabled for the collaboration.

  • allowed_result_regions (Array<String>, nil) (defaults to: nil)

    The AWS Regions where collaboration query results can be stored.

  • analytics_engine (String, nil) (defaults to: nil)

    The analytics engine for the collaboration.

  • auto_approved_change_types (Array<String>, nil) (defaults to: nil)

    The types of change requests that are automatically approved for this collaboration.

  • creator_member_abilities (Array<String>, nil) (defaults to: nil)

    The abilities granted to the collaboration creator.

  • creator_ml_member_abilities (AWSCDK::IResolvable, AWSCDK::CleanRooms::CfnCollaboration::MLMemberAbilitiesProperty, nil) (defaults to: nil)

    The ML member abilities for a collaboration member.

  • creator_payment_configuration (AWSCDK::IResolvable, AWSCDK::CleanRooms::CfnCollaboration::PaymentConfigurationProperty, nil) (defaults to: nil)

    An object representing the collaboration member's payment responsibilities set by the collaboration creator.

  • data_encryption_metadata (AWSCDK::IResolvable, AWSCDK::CleanRooms::CfnCollaboration::DataEncryptionMetadataProperty, nil) (defaults to: nil)

    The settings for client-side encryption for cryptographic computing.

  • is_metrics_enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)
  • job_log_status (String, nil) (defaults to: nil)

    An indicator as to whether job logging has been enabled or disabled for the collaboration.

  • members (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::CleanRooms::CfnCollaboration::MemberSpecificationProperty>, nil) (defaults to: nil)

    A list of initial members, not including the creator.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    An optional label that you can assign to a resource when you create it.



24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'clean_rooms/cfn_collaboration_props.rb', line 24

def initialize(creator_display_name:, description:, name:, query_log_status:, allowed_result_regions: nil, analytics_engine: nil, auto_approved_change_types: nil, creator_member_abilities: nil, creator_ml_member_abilities: nil, creator_payment_configuration: nil, data_encryption_metadata: nil, is_metrics_enabled: nil, job_log_status: nil, members: nil, tags: nil)
  @creator_display_name = creator_display_name
  Jsii::Type.check_type(@creator_display_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "creatorDisplayName")
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @query_log_status = query_log_status
  Jsii::Type.check_type(@query_log_status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "queryLogStatus")
  @allowed_result_regions = allowed_result_regions
  Jsii::Type.check_type(@allowed_result_regions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "allowedResultRegions") unless @allowed_result_regions.nil?
  @analytics_engine = analytics_engine
  Jsii::Type.check_type(@analytics_engine, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "analyticsEngine") unless @analytics_engine.nil?
  @auto_approved_change_types = auto_approved_change_types
  Jsii::Type.check_type(@auto_approved_change_types, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "autoApprovedChangeTypes") unless @auto_approved_change_types.nil?
  @creator_member_abilities = creator_member_abilities
  Jsii::Type.check_type(@creator_member_abilities, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "creatorMemberAbilities") unless @creator_member_abilities.nil?
  @creator_ml_member_abilities = creator_ml_member_abilities.is_a?(Hash) ? ::AWSCDK::CleanRooms::CfnCollaboration::MLMemberAbilitiesProperty.new(**creator_ml_member_abilities.transform_keys(&:to_sym)) : creator_ml_member_abilities
  Jsii::Type.check_type(@creator_ml_member_abilities, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jbGVhbnJvb21zLkNmbkNvbGxhYm9yYXRpb24uTUxNZW1iZXJBYmlsaXRpZXNQcm9wZXJ0eSJ9XX19")), "creatorMlMemberAbilities") unless @creator_ml_member_abilities.nil?
  @creator_payment_configuration = creator_payment_configuration.is_a?(Hash) ? ::AWSCDK::CleanRooms::CfnCollaboration::PaymentConfigurationProperty.new(**creator_payment_configuration.transform_keys(&:to_sym)) : creator_payment_configuration
  Jsii::Type.check_type(@creator_payment_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jbGVhbnJvb21zLkNmbkNvbGxhYm9yYXRpb24uUGF5bWVudENvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "creatorPaymentConfiguration") unless @creator_payment_configuration.nil?
  @data_encryption_metadata = .is_a?(Hash) ? ::AWSCDK::CleanRooms::CfnCollaboration::DataEncryptionMetadataProperty.new(**.transform_keys(&:to_sym)) : 
  Jsii::Type.check_type(@data_encryption_metadata, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19jbGVhbnJvb21zLkNmbkNvbGxhYm9yYXRpb24uRGF0YUVuY3J5cHRpb25NZXRhZGF0YVByb3BlcnR5In1dfX0=")), "dataEncryptionMetadata") unless @data_encryption_metadata.nil?
  @is_metrics_enabled = is_metrics_enabled
  Jsii::Type.check_type(@is_metrics_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "isMetricsEnabled") unless @is_metrics_enabled.nil?
  @job_log_status = job_log_status
  Jsii::Type.check_type(@job_log_status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "jobLogStatus") unless @job_log_status.nil?
  @members = members
  Jsii::Type.check_type(@members, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfY2xlYW5yb29tcy5DZm5Db2xsYWJvcmF0aW9uLk1lbWJlclNwZWNpZmljYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "members") unless @members.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#allowed_result_regionsArray<String>? (readonly)

The AWS Regions where collaboration query results can be stored.

Returns the list of Region identifiers that were specified when the collaboration was created. This list is used to enforce regional storage policies and compliance requirements.



87
88
89
# File 'clean_rooms/cfn_collaboration_props.rb', line 87

def allowed_result_regions
  @allowed_result_regions
end

#analytics_engineString? (readonly)

The analytics engine for the collaboration.

After July 16, 2025, the CLEAN_ROOMS_SQL parameter will no longer be available.



94
95
96
# File 'clean_rooms/cfn_collaboration_props.rb', line 94

def analytics_engine
  @analytics_engine
end

#auto_approved_change_typesArray<String>? (readonly)

The types of change requests that are automatically approved for this collaboration.



99
100
101
# File 'clean_rooms/cfn_collaboration_props.rb', line 99

def auto_approved_change_types
  @auto_approved_change_types
end

#creator_display_nameString (readonly)

A display name of the collaboration creator.



61
62
63
# File 'clean_rooms/cfn_collaboration_props.rb', line 61

def creator_display_name
  @creator_display_name
end

#creator_member_abilitiesArray<String>? (readonly)

The abilities granted to the collaboration creator.

Allowed values CAN_QUERY | CAN_RECEIVE_RESULTS | CAN_RUN_JOB



106
107
108
# File 'clean_rooms/cfn_collaboration_props.rb', line 106

def creator_member_abilities
  @creator_member_abilities
end

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

The ML member abilities for a collaboration member.



111
112
113
# File 'clean_rooms/cfn_collaboration_props.rb', line 111

def creator_ml_member_abilities
  @creator_ml_member_abilities
end

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

An object representing the collaboration member's payment responsibilities set by the collaboration creator.



116
117
118
# File 'clean_rooms/cfn_collaboration_props.rb', line 116

def creator_payment_configuration
  @creator_payment_configuration
end

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

The settings for client-side encryption for cryptographic computing.



121
122
123
# File 'clean_rooms/cfn_collaboration_props.rb', line 121

def 
  @data_encryption_metadata
end

#descriptionString (readonly)

A description of the collaboration provided by the collaboration owner.



66
67
68
# File 'clean_rooms/cfn_collaboration_props.rb', line 66

def description
  @description
end

#is_metrics_enabledBoolean, ... (readonly)



124
125
126
# File 'clean_rooms/cfn_collaboration_props.rb', line 124

def is_metrics_enabled
  @is_metrics_enabled
end

#job_log_statusString? (readonly)

An indicator as to whether job logging has been enabled or disabled for the collaboration.

When ENABLED , AWS Clean Rooms logs details about jobs run within this collaboration and those logs can be viewed in Amazon CloudWatch Logs. The default value is DISABLED .



131
132
133
# File 'clean_rooms/cfn_collaboration_props.rb', line 131

def job_log_status
  @job_log_status
end

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

A list of initial members, not including the creator.

This list is immutable.



138
139
140
# File 'clean_rooms/cfn_collaboration_props.rb', line 138

def members
  @members
end

#nameString (readonly)

A human-readable identifier provided by the collaboration owner.

Display names are not unique.



73
74
75
# File 'clean_rooms/cfn_collaboration_props.rb', line 73

def name
  @name
end

#query_log_statusString (readonly)

An indicator as to whether query logging has been enabled or disabled for the collaboration.

When ENABLED , AWS Clean Rooms logs details about queries run within this collaboration and those logs can be viewed in Amazon CloudWatch Logs. The default value is DISABLED .



80
81
82
# File 'clean_rooms/cfn_collaboration_props.rb', line 80

def query_log_status
  @query_log_status
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

An optional label that you can assign to a resource when you create it.

Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.



145
146
147
# File 'clean_rooms/cfn_collaboration_props.rb', line 145

def tags
  @tags
end

Class Method Details

.jsii_propertiesObject



147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
# File 'clean_rooms/cfn_collaboration_props.rb', line 147

def self.jsii_properties
  {
    :creator_display_name => "creatorDisplayName",
    :description => "description",
    :name => "name",
    :query_log_status => "queryLogStatus",
    :allowed_result_regions => "allowedResultRegions",
    :analytics_engine => "analyticsEngine",
    :auto_approved_change_types => "autoApprovedChangeTypes",
    :creator_member_abilities => "creatorMemberAbilities",
    :creator_ml_member_abilities => "creatorMlMemberAbilities",
    :creator_payment_configuration => "creatorPaymentConfiguration",
    :data_encryption_metadata => "dataEncryptionMetadata",
    :is_metrics_enabled => "isMetricsEnabled",
    :job_log_status => "jobLogStatus",
    :members => "members",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
# File 'clean_rooms/cfn_collaboration_props.rb', line 167

def to_jsii
  result = {}
  result.merge!({
    "creatorDisplayName" => @creator_display_name,
    "description" => @description,
    "name" => @name,
    "queryLogStatus" => @query_log_status,
    "allowedResultRegions" => @allowed_result_regions,
    "analyticsEngine" => @analytics_engine,
    "autoApprovedChangeTypes" => @auto_approved_change_types,
    "creatorMemberAbilities" => @creator_member_abilities,
    "creatorMlMemberAbilities" => @creator_ml_member_abilities,
    "creatorPaymentConfiguration" => @creator_payment_configuration,
    "dataEncryptionMetadata" => @data_encryption_metadata,
    "isMetricsEnabled" => @is_metrics_enabled,
    "jobLogStatus" => @job_log_status,
    "members" => @members,
    "tags" => @tags,
  })
  result.compact
end