Class: AWSCDK::QBusiness::CfnPermissionProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
q_business/cfn_permission_props.rb

Overview

Properties for defining a CfnPermission.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(actions:, application_id:, principal:, statement_id:, conditions: nil) ⇒ CfnPermissionProps

Returns a new instance of CfnPermissionProps.

Parameters:

  • actions (Array<String>)

    The list of Amazon Q Business actions that the ISV is allowed to perform.

  • application_id (String)

    The unique identifier of the Amazon Q Business application.

  • principal (String)

    Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses.

  • statement_id (String)

    A unique identifier for the policy statement.

  • conditions (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::QBusiness::CfnPermission::ConditionProperty>, nil) (defaults to: nil)


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

def initialize(actions:, application_id:, principal:, statement_id:, conditions: nil)
  @actions = actions
  Jsii::Type.check_type(@actions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "actions")
  @application_id = application_id
  Jsii::Type.check_type(@application_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "applicationId")
  @principal = principal
  Jsii::Type.check_type(@principal, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "principal")
  @statement_id = statement_id
  Jsii::Type.check_type(@statement_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "statementId")
  @conditions = conditions
  Jsii::Type.check_type(@conditions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfcWJ1c2luZXNzLkNmblBlcm1pc3Npb24uQ29uZGl0aW9uUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "conditions") unless @conditions.nil?
end

Instance Attribute Details

#actionsArray<String> (readonly)

The list of Amazon Q Business actions that the ISV is allowed to perform.



31
32
33
# File 'q_business/cfn_permission_props.rb', line 31

def actions
  @actions
end

#application_idString (readonly)

The unique identifier of the Amazon Q Business application.



36
37
38
# File 'q_business/cfn_permission_props.rb', line 36

def application_id
  @application_id
end

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



49
50
51
# File 'q_business/cfn_permission_props.rb', line 49

def conditions
  @conditions
end

#principalString (readonly)

Provides user and group information used for filtering documents to use for generating Amazon Q Business conversation responses.



41
42
43
# File 'q_business/cfn_permission_props.rb', line 41

def principal
  @principal
end

#statement_idString (readonly)

A unique identifier for the policy statement.



46
47
48
# File 'q_business/cfn_permission_props.rb', line 46

def statement_id
  @statement_id
end

Class Method Details

.jsii_propertiesObject



51
52
53
54
55
56
57
58
59
# File 'q_business/cfn_permission_props.rb', line 51

def self.jsii_properties
  {
    :actions => "actions",
    :application_id => "applicationId",
    :principal => "principal",
    :statement_id => "statementId",
    :conditions => "conditions",
  }
end

Instance Method Details

#to_jsiiObject



61
62
63
64
65
66
67
68
69
70
71
# File 'q_business/cfn_permission_props.rb', line 61

def to_jsii
  result = {}
  result.merge!({
    "actions" => @actions,
    "applicationId" => @application_id,
    "principal" => @principal,
    "statementId" => @statement_id,
    "conditions" => @conditions,
  })
  result.compact
end