Class: AWSCDK::DataZone::CfnPolicyGrantProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
data_zone/cfn_policy_grant_props.rb

Overview

Properties for defining a CfnPolicyGrant.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(domain_identifier:, entity_identifier:, entity_type:, policy_type:, detail: nil, principal: nil) ⇒ CfnPolicyGrantProps

Returns a new instance of CfnPolicyGrantProps.

Parameters:



15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'data_zone/cfn_policy_grant_props.rb', line 15

def initialize(domain_identifier:, entity_identifier:, entity_type:, policy_type:, detail: nil, principal: nil)
  @domain_identifier = domain_identifier
  Jsii::Type.check_type(@domain_identifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domainIdentifier")
  @entity_identifier = entity_identifier
  Jsii::Type.check_type(@entity_identifier, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "entityIdentifier")
  @entity_type = entity_type
  Jsii::Type.check_type(@entity_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "entityType")
  @policy_type = policy_type
  Jsii::Type.check_type(@policy_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "policyType")
  @detail = detail.is_a?(Hash) ? ::AWSCDK::DataZone::CfnPolicyGrant::PolicyGrantDetailProperty.new(**detail.transform_keys(&:to_sym)) : detail
  Jsii::Type.check_type(@detail, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhem9uZS5DZm5Qb2xpY3lHcmFudC5Qb2xpY3lHcmFudERldGFpbFByb3BlcnR5In1dfX0=")), "detail") unless @detail.nil?
  @principal = principal.is_a?(Hash) ? ::AWSCDK::DataZone::CfnPolicyGrant::PolicyGrantPrincipalProperty.new(**principal.transform_keys(&:to_sym)) : principal
  Jsii::Type.check_type(@principal, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19kYXRhem9uZS5DZm5Qb2xpY3lHcmFudC5Qb2xpY3lHcmFudFByaW5jaXBhbFByb3BlcnR5In1dfX0=")), "principal") unless @principal.nil?
end

Instance Attribute Details

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

The details of the policy grant member.



54
55
56
# File 'data_zone/cfn_policy_grant_props.rb', line 54

def detail
  @detail
end

#domain_identifierString (readonly)

The ID of the domain where you want to add a policy grant.



34
35
36
# File 'data_zone/cfn_policy_grant_props.rb', line 34

def domain_identifier
  @domain_identifier
end

#entity_identifierString (readonly)

The ID of the entity (resource) to which you want to add a policy grant.



39
40
41
# File 'data_zone/cfn_policy_grant_props.rb', line 39

def entity_identifier
  @entity_identifier
end

#entity_typeString (readonly)

The type of entity (resource) to which the grant is added.



44
45
46
# File 'data_zone/cfn_policy_grant_props.rb', line 44

def entity_type
  @entity_type
end

#policy_typeString (readonly)

The type of policy that you want to grant.



49
50
51
# File 'data_zone/cfn_policy_grant_props.rb', line 49

def policy_type
  @policy_type
end

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

The principal of the policy grant member.



59
60
61
# File 'data_zone/cfn_policy_grant_props.rb', line 59

def principal
  @principal
end

Class Method Details

.jsii_propertiesObject



61
62
63
64
65
66
67
68
69
70
# File 'data_zone/cfn_policy_grant_props.rb', line 61

def self.jsii_properties
  {
    :domain_identifier => "domainIdentifier",
    :entity_identifier => "entityIdentifier",
    :entity_type => "entityType",
    :policy_type => "policyType",
    :detail => "detail",
    :principal => "principal",
  }
end

Instance Method Details

#to_jsiiObject



72
73
74
75
76
77
78
79
80
81
82
83
# File 'data_zone/cfn_policy_grant_props.rb', line 72

def to_jsii
  result = {}
  result.merge!({
    "domainIdentifier" => @domain_identifier,
    "entityIdentifier" => @entity_identifier,
    "entityType" => @entity_type,
    "policyType" => @policy_type,
    "detail" => @detail,
    "principal" => @principal,
  })
  result.compact
end