package awsemr import ( "github.com/aws/aws-cdk-go/awscdk/v2" ) // Properties for defining a `CfnStudio`. // // Example: // // The code below shows an example of how to instantiate this type. // // The values are placeholders you should change. // import "github.com/aws/aws-cdk-go/awscdk" // // cfnStudioProps := &CfnStudioProps{ // AuthMode: jsii.String("authMode"), // DefaultS3Location: jsii.String("defaultS3Location"), // EngineSecurityGroupId: jsii.String("engineSecurityGroupId"), // Name: jsii.String("name"), // ServiceRole: jsii.String("serviceRole"), // SubnetIds: []*string{ // jsii.String("subnetIds"), // }, // VpcId: jsii.String("vpcId"), // WorkspaceSecurityGroupId: jsii.String("workspaceSecurityGroupId"), // // // the properties below are optional // Description: jsii.String("description"), // IdpAuthUrl: jsii.String("idpAuthUrl"), // IdpRelayStateParameterName: jsii.String("idpRelayStateParameterName"), // Tags: []cfnTag{ // &cfnTag{ // Key: jsii.String("key"), // Value: jsii.String("value"), // }, // }, // UserRole: jsii.String("userRole"), // } // // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html // type CfnStudioProps struct { // Specifies whether the Studio authenticates users using IAM Identity Center or IAM. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-authmode // AuthMode *string `field:"required" json:"authMode" yaml:"authMode"` // The Amazon S3 location to back up EMR Studio Workspaces and notebook files. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-defaults3location // DefaultS3Location *string `field:"required" json:"defaultS3Location" yaml:"defaultS3Location"` // The ID of the Amazon EMR Studio Engine security group. // // The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `VpcId` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-enginesecuritygroupid // EngineSecurityGroupId *string `field:"required" json:"engineSecurityGroupId" yaml:"engineSecurityGroupId"` // A descriptive name for the Amazon EMR Studio. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-name // Name *string `field:"required" json:"name" yaml:"name"` // The Amazon Resource Name (ARN) of the IAM role that will be assumed by the Amazon EMR Studio. // // The service role provides a way for Amazon EMR Studio to interoperate with other AWS services. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-servicerole // ServiceRole *string `field:"required" json:"serviceRole" yaml:"serviceRole"` // A list of subnet IDs to associate with the Amazon EMR Studio. // // A Studio can have a maximum of 5 subnets. The subnets must belong to the VPC specified by `VpcId` . Studio users can create a Workspace in any of the specified subnets. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-subnetids // SubnetIds *[]*string `field:"required" json:"subnetIds" yaml:"subnetIds"` // The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with the Studio. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-vpcid // VpcId *string `field:"required" json:"vpcId" yaml:"vpcId"` // The ID of the Workspace security group associated with the Amazon EMR Studio. // // The Workspace security group allows outbound network traffic to resources in the Engine security group and to the internet. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-workspacesecuritygroupid // WorkspaceSecurityGroupId *string `field:"required" json:"workspaceSecurityGroupId" yaml:"workspaceSecurityGroupId"` // A detailed description of the Amazon EMR Studio. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-description // Description *string `field:"optional" json:"description" yaml:"description"` // Your identity provider's authentication endpoint. // // Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-idpauthurl // IdpAuthUrl *string `field:"optional" json:"idpAuthUrl" yaml:"idpAuthUrl"` // The name of your identity provider's `RelayState` parameter. // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-idprelaystateparametername // IdpRelayStateParameterName *string `field:"optional" json:"idpRelayStateParameterName" yaml:"idpRelayStateParameterName"` // An array of key-value pairs to apply to this resource. // // For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-tags // Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` // The Amazon Resource Name (ARN) of the IAM user role that will be assumed by users and groups logged in to a Studio. // // The permissions attached to this IAM role can be scoped down for each user or group using session policies. You only need to specify `UserRole` when you set `AuthMode` to `SSO` . // See: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-studio.html#cfn-emr-studio-userrole // UserRole *string `field:"optional" json:"userRole" yaml:"userRole"` }