Class: AWSCDK::EMR::CfnStudioSessionMappingProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
emr/cfn_studio_session_mapping_props.rb

Overview

Properties for defining a CfnStudioSessionMapping.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(identity_name:, identity_type:, session_policy_arn:, studio_id:) ⇒ CfnStudioSessionMappingProps

Returns a new instance of CfnStudioSessionMappingProps.

Parameters:

  • identity_name (String)

    The name of the user or group.

  • identity_type (String)

    Specifies whether the identity to map to the Amazon EMR Studio is a user or a group.

  • session_policy_arn (String, AWSCDK::Interfaces::AWSIAM::IManagedPolicyRef)

    The Amazon Resource Name (ARN) for the session policy that will be applied to the user or group.

  • studio_id (String, AWSCDK::Interfaces::AWSEMR::IStudioRef)

    The ID of the Amazon EMR Studio to which the user or group will be mapped.



13
14
15
16
17
18
19
20
21
22
# File 'emr/cfn_studio_session_mapping_props.rb', line 13

def initialize(identity_name:, identity_type:, session_policy_arn:, studio_id:)
  @identity_name = identity_name
  Jsii::Type.check_type(@identity_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "identityName")
  @identity_type = identity_type
  Jsii::Type.check_type(@identity_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "identityType")
  @session_policy_arn = session_policy_arn
  Jsii::Type.check_type(@session_policy_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pYW0uSU1hbmFnZWRQb2xpY3lSZWYifV19fQ==")), "sessionPolicyArn")
  @studio_id = studio_id
  Jsii::Type.check_type(@studio_id, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19lbXIuSVN0dWRpb1JlZiJ9XX19")), "studioId")
end

Instance Attribute Details

#identity_nameString (readonly)

The name of the user or group.

For more information, see UserName and DisplayName in the Identity Store API Reference .



30
31
32
# File 'emr/cfn_studio_session_mapping_props.rb', line 30

def identity_name
  @identity_name
end

#identity_typeString (readonly)

Specifies whether the identity to map to the Amazon EMR Studio is a user or a group.



35
36
37
# File 'emr/cfn_studio_session_mapping_props.rb', line 35

def identity_type
  @identity_type
end

#session_policy_arnString, AWSCDK::Interfaces::AWSIAM::IManagedPolicyRef (readonly)

The Amazon Resource Name (ARN) for the session policy that will be applied to the user or group.

Session policies refine Studio user permissions without the need to use multiple IAM user roles. For more information, see Create an EMR Studio user role with session policies in the Amazon EMR Management Guide .



42
43
44
# File 'emr/cfn_studio_session_mapping_props.rb', line 42

def session_policy_arn
  @session_policy_arn
end

#studio_idString, AWSCDK::Interfaces::AWSEMR::IStudioRef (readonly)

The ID of the Amazon EMR Studio to which the user or group will be mapped.



47
48
49
# File 'emr/cfn_studio_session_mapping_props.rb', line 47

def studio_id
  @studio_id
end

Class Method Details

.jsii_propertiesObject



49
50
51
52
53
54
55
56
# File 'emr/cfn_studio_session_mapping_props.rb', line 49

def self.jsii_properties
  {
    :identity_name => "identityName",
    :identity_type => "identityType",
    :session_policy_arn => "sessionPolicyArn",
    :studio_id => "studioId",
  }
end

Instance Method Details

#to_jsiiObject



58
59
60
61
62
63
64
65
66
67
# File 'emr/cfn_studio_session_mapping_props.rb', line 58

def to_jsii
  result = {}
  result.merge!({
    "identityName" => @identity_name,
    "identityType" => @identity_type,
    "sessionPolicyArn" => @session_policy_arn,
    "studioId" => @studio_id,
  })
  result.compact
end