CloudFormation Changelog

Changes to the CloudFormation resource specification.

ADDED
9
REMOVED
0
MODIFIED
17
DOCUMENTATION
253

New resource types

AWS::BedrockAgentCore::ApiKeyCredentialProviderLink to AWS::BedrockAgentCore::ApiKeyCredentialProvider
Type: AWS::BedrockAgentCore::ApiKeyCredentialProvider
Properties:
  ApiKey: String
  Tags:
    - Value: String
      Key: String
  Name: String
Fn::GetAtt:
  CredentialProviderArn: String
  ApiKeySecretArn.SecretArn: String
  CreatedTime: String
  LastUpdatedTime: String
  ApiKeySecretArn:
    SecretArn: String
AWS::ECS::DaemonLink to AWS::ECS::Daemon
Type: AWS::ECS::Daemon
Properties:
  ClusterArn: String
  DaemonTaskDefinitionArn: String
  DaemonName: String
  EnableECSManagedTags: Boolean
  CapacityProviderArns:
    - String
  EnableExecuteCommand: Boolean
  PropagateTags: String
  DeploymentConfiguration:
    DrainPercent: Double
    BakeTimeInMinutes: Integer
    Alarms:
      AlarmNames:
        - String
      Enable: Boolean
  Tags:
    - Value: String
      Key: String
Fn::GetAtt:
  DaemonStatus: String
  DeploymentArn: String
  CreatedAt: String
  UpdatedAt: String
  DaemonArn: String
AWS::ECS::DaemonTaskDefinitionLink to AWS::ECS::DaemonTaskDefinition
Type: AWS::ECS::DaemonTaskDefinition
Properties:
  ExecutionRoleArn: String
  TaskRoleArn: String
  Volumes:
    - Host:
        SourcePath: String
      Name: String
  Memory: String
  ContainerDefinitions:
    - User: String
      Secrets:
        - ValueFrom: String
          Name: String
      Memory: Integer
      Privileged: Boolean
      StartTimeout: Integer
      HealthCheck:
        Command:
          - String
        Timeout: Integer
        Retries: Integer
        Interval: Integer
        StartPeriod: Integer
      Cpu: Integer
      EntryPoint:
        - String
      ReadonlyRootFilesystem: Boolean
      Image: String
      Essential: Boolean
      LogConfiguration:
        SecretOptions:  # Secret: see above
        Options:
          <key>: String
        LogDriver: String
      EnvironmentFiles:
        - Type: String
          Value: String
      Name: String
      FirelensConfiguration:
        Options:
          <key>: String
        Type: String
      SystemControls:
        - Value: String
          Namespace: String
      Interactive: Boolean
      Ulimits:
        - SoftLimit: Integer
          HardLimit: Integer
          Name: String
      StopTimeout: Integer
      WorkingDirectory: String
      MemoryReservation: Integer
      RepositoryCredentials:
        CredentialsParameter: String
      LinuxParameters:
        Capabilities:
          Add:
            - String
          Drop:
            - String
        Tmpfs:
          - Size: Integer
            ContainerPath: String
            MountOptions:
              - String
        Devices:
          - HostPath: String
            Permissions:
              - String
            ContainerPath: String
        InitProcessEnabled: Boolean
      RestartPolicy:
        IgnoredExitCodes:
          - Integer
        RestartAttemptPeriod: Integer
        Enabled: Boolean
      PseudoTerminal: Boolean
      MountPoints:
        - ReadOnly: Boolean
          SourceVolume: String
          ContainerPath: String
      DependsOn:
        - Condition: String
          ContainerName: String
      Command:
        - String
      Environment:
        - Value: String
          Name: String
  Family: String
  Cpu: String
  Tags:
    - Value: String
      Key: String
Fn::GetAtt:
  DaemonTaskDefinitionArn: String
AWS::NovaAct::WorkflowDefinitionLink to AWS::NovaAct::WorkflowDefinition
Type: AWS::NovaAct::WorkflowDefinition
Properties:
  Description: String
  ExportConfig:
    S3KeyPrefix: String
    S3BucketName: String
  Name: String
Fn::GetAtt:
  Status: String
  CreatedAt: String
  Arn: String
AWS::Omics::ConfigurationLink to AWS::Omics::Configuration
Type: AWS::Omics::Configuration
Properties:
  Description: String
  RunConfigurations:
    VpcConfig:
      SecurityGroupIds:
        - String
      SubnetIds:
        - String
  Tags:
    <key>: String
  Name: String
Fn::GetAtt:
  Status: String
  Uuid: String
  CreationTime: String
  Arn: String
AWS::SecurityAgent::AgentSpaceLink to AWS::SecurityAgent::AgentSpace
Type: AWS::SecurityAgent::AgentSpace
Properties:
  IntegratedResources:
    - Integration: String
      ProviderResources:
        - GitHubRepository:
            Owner: String
            Name: String
          GitHubCapabilities:
            RemediateCode: Boolean
            LeaveComments: Boolean
  Description: String
  KmsKeyId: String
  TargetDomainIds:
    - String
  CodeReviewSettings:
    ControlsScanning: Boolean
    GeneralPurposeScanning: Boolean
  AwsResources:
    LogGroups:
      - String
    Vpcs:
      - SubnetArns:
          - String
        VpcArn: String
        SecurityGroupArns:
          - String
    IamRoles:
      - String
    SecretArns:
      - String
    S3Buckets:
      - String
    LambdaFunctionArns:
      - String
  Tags:
    - Value: String
      Key: String
  Name: String
Fn::GetAtt:
  CreatedAt: String
  AgentSpaceId: String
  UpdatedAt: String
AWS::SecurityAgent::ApplicationLink to AWS::SecurityAgent::Application
Type: AWS::SecurityAgent::Application
Properties:
  IdCConfiguration:
    IdCApplicationArn: String
    IdCInstanceArn: String
  DefaultKmsKeyId: String
  RoleArn: String
  Tags:
    - Value: String
      Key: String
Fn::GetAtt:
  ApplicationName: String
  IdCConfiguration.IdCApplicationArn: String
  ApplicationId: String
  Domain: String
AWS::SecurityAgent::PentestLink to AWS::SecurityAgent::Pentest
Type: AWS::SecurityAgent::Pentest
Properties:
  NetworkTrafficConfig:
    Rules:
      - Pattern: String
        Effect: String
        NetworkTrafficRuleType: String
    CustomHeaders:
      - Value: String
        Name: String
  CodeRemediationStrategy: String
  ServiceRole: String
  VpcConfig:
    SubnetArns:
      - String
    VpcArn: String
    SecurityGroupArns:
      - String
  Assets:
    Endpoints:
      - Uri: String
    SourceCode:
      - S3Location: String
    IntegratedRepositories:
      - ProviderResourceId: String
        IntegrationId: String
    Documents:
      - ArtifactId: String
        S3Location: String
    Actors:
      - Identifier: String
        Description: String
        Authentication:
          Value: String
          ProviderType: String
        Uris:
          - String
  ExcludeRiskTypes:
    - String
  Title: String
  AgentSpaceId: String
  LogConfig:
    LogGroup: String
    LogStream: String
Fn::GetAtt:
  CreatedAt: String
  PentestId: String
  UpdatedAt: String
AWS::SecurityAgent::TargetDomainLink to AWS::SecurityAgent::TargetDomain
Type: AWS::SecurityAgent::TargetDomain
Properties:
  VerificationMethod: String
  TargetDomainName: String
  Tags:
    - Value: String
      Key: String
Fn::GetAtt:
  VerificationStatus: String
  TargetDomainId: String
  VerificationDetails:
    HttpRoute:
      RoutePath: String
      Token: String
    DnsTxt:
      Token: String
      DnsRecordType: String
      DnsRecordName: String
    Method: String
  CreatedAt: String
  VerificationDetails.HttpRoute.RoutePath: String
  VerificationDetails.Method: String
  VerificationDetails.DnsTxt.Token: String
  VerificationDetails.DnsTxt.DnsRecordType: String
  VerificationDetails.DnsTxt:  # DnsVerification: see above
  VerificationDetails.HttpRoute:  # HttpVerification: see above
  VerificationDetails.DnsTxt.DnsRecordName: String
  VerifiedAt: String
  VerificationDetails.HttpRoute.Token: String

Changed resource types

AWS::ApiGatewayV2::StageLink to AWS::ApiGatewayV2::Stage
Type: AWS::ApiGatewayV2::Stage
Properties:
removed:   AccessPolicyId: String
AWS::AppStream::FleetLink to AWS::AppStream::Fleet
Type: AWS::AppStream::Fleet
Properties:
added:   DisableIMDSV1: Boolean
added:   RootVolumeConfig:
added:     VolumeSizeInGb: Integer
AWS::AppStream::StackLink to AWS::AppStream::Stack
Type: AWS::AppStream::Stack
Properties:
modified:   # Duplicates allowed: Not specified → Yes
  AccessEndpoints:
modified:   # Duplicates allowed: Not specified → Yes
  AttributesToDelete:
    - String
modified:   # Duplicates allowed: Not specified → Yes
  EmbedHostDomains:
    - String
modified:   # Duplicates allowed: Not specified → Yes
  StorageConnectors:
modified:     - # Duplicates allowed: Not specified → Yes
      Domains:
        - String
modified:   # Duplicates allowed: Not specified → Yes
  Tags:
modified:   # Duplicates allowed: Not specified → Yes
  UserSettings:
AWS::BedrockAgentCore::EvaluatorLink to AWS::BedrockAgentCore::Evaluator
Type: AWS::BedrockAgentCore::Evaluator
Properties:
  EvaluatorConfig:
added:     CodeBased:
added:       LambdaConfig:
added:         LambdaArn: String
added:         LambdaTimeoutInSeconds: Integer
modified:     # Required: Yes → No
    LlmAsAJudge:
AWS::BedrockAgentCore::MemoryLink to AWS::BedrockAgentCore::Memory
Type: AWS::BedrockAgentCore::Memory
Properties:
  MemoryStrategies:
    - CustomMemoryStrategy:
        Configuration:
          EpisodicOverride:
            Reflection:
added:               NamespaceTemplates:
added:                 - String
added:         NamespaceTemplates:
added:           - String
      EpisodicMemoryStrategy:
added:         NamespaceTemplates:
added:           - String
        ReflectionConfiguration:
added:           NamespaceTemplates:
added:             - String
modified:           # Required: Yes → No
          Namespaces:
            - String
      SemanticMemoryStrategy:
added:         NamespaceTemplates:
added:           - String
      SummaryMemoryStrategy:
added:         NamespaceTemplates:
added:           - String
      UserPreferenceMemoryStrategy:
added:         NamespaceTemplates:
added:           - String
AWS::CustomerProfiles::SegmentDefinitionLink to AWS::CustomerProfiles::SegmentDefinition
Type: AWS::CustomerProfiles::SegmentDefinition
Properties:
added:   SegmentSort:
added:     Attributes:
added:       - Order: String
added:         Type: String
added:         DataType: String
added:         Name: String
AWS::DataZone::ConnectionLink to AWS::DataZone::Connection
Type: AWS::DataZone::Connection
Properties:
  Props:
added:     WorkflowsMwaaProperties:
added:       MwaaEnvironmentName: String
added:     WorkflowsServerlessProperties: Json
AWS::DataZone::ProjectLink to AWS::DataZone::Project
Type: AWS::DataZone::Project
Properties:
added:   ResourceTags:
added:     - Value: String
added:       Key: String
AWS::DataZone::ProjectProfileLink to AWS::DataZone::ProjectProfile
Type: AWS::DataZone::ProjectProfile
Properties:
added:   AllowCustomProjectResourceTags: Boolean
added:   ProjectResourceTags:
added:     - IsValueEditable: Boolean
added:       Value: String
added:       Key: String
added:   ProjectResourceTagsDescription: String
AWS::Deadline::FleetLink to AWS::Deadline::Fleet
Type: AWS::Deadline::Fleet
Properties:
  Configuration:
    CustomerManaged:
added:       AutoScalingConfiguration:
added:         StandbyWorkerCount: Integer
added:         ScaleOutWorkersPerMinute: Integer
added:         WorkerIdleDurationSeconds: Integer
    ServiceManagedEc2:
added:       AutoScalingConfiguration:
added:         StandbyWorkerCount: Integer
added:         ScaleOutWorkersPerMinute: Integer
added:         WorkerIdleDurationSeconds: Integer
AWS::ECS::CapacityProviderLink to AWS::ECS::CapacityProvider
Type: AWS::ECS::CapacityProvider
Properties:
  ManagedInstancesProvider:
    InstanceLaunchTemplate:
added:       LocalStorageConfiguration:
added:         UseLocalStorage: Boolean
AWS::EKS::NodegroupLink to AWS::EKS::Nodegroup
Type: AWS::EKS::Nodegroup
Properties:
added:   WarmPoolConfig:
added:     MinSize: Integer
added:     MaxGroupPreparedCapacity: Integer
added:     Enabled: Boolean
added:     PoolState: String
added:     ReuseOnScaleIn: Boolean
AWS::ElasticLoadBalancing::LoadBalancerLink to AWS::ElasticLoadBalancing::LoadBalancer
Type: AWS::ElasticLoadBalancing::LoadBalancer
Properties:
modified:   # Duplicates allowed: No → Yes
  AppCookieStickinessPolicy:
modified:   # Duplicates allowed: No → Yes
  AvailabilityZones:
    - String
modified:   # Update requires: Some interruptions → No interruption
  HealthCheck:
modified:   # Duplicates allowed: No → Yes
  Instances:
    - String
modified:   # Duplicates allowed: No → Yes
  LBCookieStickinessPolicy:
modified:   # Duplicates allowed: No → Yes
  Listeners:
  Policies:
modified:     - Attributes: List of Json → List of PolicyItem
added:         Value: String
added:         Name: String
modified:   # Update requires: Some interruptions → No interruption
  Subnets:
    - String
Fn::GetAtt:
added:   SourceSecurityGroup:
added:     GroupName: String
added:     OwnerAlias: String
AWS::EMR::ClusterLink to AWS::EMR::Cluster
Type: AWS::EMR::Cluster
Properties:
  Applications:
modified:     - # Update requires: Replacement → No interruption
modified:       # Duplicates allowed: Not specified → No
      AdditionalInfo:
        <key>: String
modified:       # Update requires: Replacement → No interruption
modified:       # Duplicates allowed: Yes → No
      Args:
        - String
modified:       # Update requires: Replacement → No interruption
      Name: String
modified:       # Update requires: Replacement → No interruption
      Version: String
  AutoTerminationPolicy:
modified:     IdleTimeout: Integer → Long
modified:   # Duplicates allowed: Yes → No
  BootstrapActions:
modified:     - # Update requires: Replacement → No interruption
      Name: String
modified:       # Update requires: Replacement → No interruption
      ScriptBootstrapAction:
modified:         # Update requires: Replacement → No interruption
modified:         # Duplicates allowed: Yes → No
        Args:
          - String
modified:         # Update requires: Replacement → No interruption
        Path: String
modified:   Configurations: List of EMRConfiguration → List of Configuration
modified:     # Update requires: Some interruptions → No interruption
    Classification: String
modified:     # Update requires: Some interruptions → No interruption
modified:     # Duplicates allowed: Not specified → No
    ConfigurationProperties:
      <key>: String
modified:     # Update requires: Some interruptions → No interruption
modified:     Configurations: List of EMRConfiguration → List of Configuration  # Configuration: see above
  Instances:
modified:     # Update requires: Some interruptions → Replacement
    AdditionalMasterSecurityGroups:
      - String
modified:     # Update requires: Some interruptions → Replacement
    AdditionalSlaveSecurityGroups:
      - String
modified:     # Update requires: Some interruptions → Replacement
    CoreInstanceFleet:
modified:       # Update requires: Some interruptions → No interruption
      InstanceTypeConfigs:
modified:         - # Update requires: Some interruptions → No interruption
          BidPrice: String
modified:           # Update requires: Some interruptions → No interruption
          BidPriceAsPercentageOfOnDemandPrice: Double
modified:           # Update requires: Some interruptions → No interruption
modified:           Configurations: List of EMRConfiguration → List of Configuration  # Configuration: see above
modified:           # Update requires: Some interruptions → Replacement
          CustomAmiId: String
modified:           # Update requires: Some interruptions → No interruption
          EbsConfiguration:
modified:             # Update requires: Some interruptions → No interruption
            EbsBlockDeviceConfigs:
modified:               - # Update requires: Some interruptions → No interruption
                VolumeSpecification:
modified:                   # Update requires: Some interruptions → No interruption
                  Iops: Integer
modified:                   # Update requires: Some interruptions → No interruption
                  SizeInGB: Integer
modified:                   # Update requires: Some interruptions → No interruption
                  Throughput: Integer
modified:                   # Update requires: Some interruptions → No interruption
                  VolumeType: String
modified:                 # Update requires: Some interruptions → No interruption
                VolumesPerInstance: Integer
modified:             # Update requires: Some interruptions → No interruption
            EbsOptimized: Boolean
modified:           # Update requires: Some interruptions → No interruption
          InstanceType: String
modified:           # Update requires: Some interruptions → No interruption
          Priority: Double
modified:           # Update requires: Some interruptions → No interruption
          WeightedCapacity: Integer
modified:       # Update requires: Some interruptions → Replacement
      LaunchSpecifications:
modified:         # Update requires: Some interruptions → No interruption
        OnDemandSpecification:
modified:           # Update requires: Some interruptions → No interruption
          AllocationStrategy: String
modified:           # Update requires: Some interruptions → No interruption
          CapacityReservationOptions:
modified:             # Update requires: Some interruptions → No interruption
            CapacityReservationPreference: String
modified:             # Update requires: Some interruptions → No interruption
            CapacityReservationResourceGroupArn: String
modified:             # Update requires: Some interruptions → No interruption
            UsageStrategy: String
modified:         # Update requires: Some interruptions → No interruption
        SpotSpecification:
modified:           # Update requires: Some interruptions → No interruption
          AllocationStrategy: String
modified:           # Update requires: Some interruptions → No interruption
          BlockDurationMinutes: Integer
modified:           # Update requires: Some interruptions → No interruption
          TimeoutAction: String
modified:           # Update requires: Some interruptions → No interruption
          TimeoutDurationMinutes: Integer
modified:       # Update requires: Some interruptions → Replacement
      Name: String
modified:       # Update requires: Some interruptions → No interruption
      ResizeSpecifications:
modified:         # Update requires: Some interruptions → No interruption
        OnDemandResizeSpecification:
modified:           # Update requires: Some interruptions → No interruption
          AllocationStrategy: String
modified:           # Update requires: Some interruptions → No interruption
          CapacityReservationOptions:  # OnDemandCapacityReservationOptions: see above
modified:           # Update requires: Some interruptions → No interruption
          TimeoutDurationMinutes: Integer
modified:         # Update requires: Some interruptions → No interruption
        SpotResizeSpecification:
modified:           # Update requires: Some interruptions → No interruption
          AllocationStrategy: String
modified:           # Update requires: Some interruptions → No interruption
          TimeoutDurationMinutes: Integer
modified:       # Update requires: Some interruptions → No interruption
      TargetOnDemandCapacity: Integer
modified:       # Update requires: Some interruptions → No interruption
      TargetSpotCapacity: Integer
modified:     # Update requires: Some interruptions → Replacement
    CoreInstanceGroup:
modified:       # Update requires: Some interruptions → No interruption
      AutoScalingPolicy:
modified:         # Update requires: Some interruptions → No interruption
        Constraints:
modified:           # Update requires: Some interruptions → No interruption
          MaxCapacity: Integer
modified:           # Update requires: Some interruptions → No interruption
          MinCapacity: Integer
modified:         # Update requires: Some interruptions → No interruption
        Rules:
modified:           - # Update requires: Some interruptions → No interruption
            Action:
modified:               # Update requires: Some interruptions → No interruption
              Market: String
modified:               # Update requires: Some interruptions → No interruption
              SimpleScalingPolicyConfiguration:
modified:                 # Update requires: Some interruptions → No interruption
                AdjustmentType: String
modified:                 # Update requires: Some interruptions → No interruption
                CoolDown: Integer
modified:                 # Update requires: Some interruptions → No interruption
                ScalingAdjustment: Integer
modified:             # Update requires: Some interruptions → No interruption
            Description: String
modified:             # Update requires: Some interruptions → No interruption
            Name: String
modified:             # Update requires: Some interruptions → No interruption
            Trigger:
modified:               # Update requires: Some interruptions → No interruption
              CloudWatchAlarmDefinition:
modified:                 # Update requires: Some interruptions → No interruption
                ComparisonOperator: String
modified:                 # Update requires: Some interruptions → No interruption
                Dimensions:
modified:                   - # Update requires: Some interruptions → No interruption
                    Key: String
modified:                     # Update requires: Some interruptions → No interruption
                    Value: String
modified:                 # Update requires: Some interruptions → No interruption
                EvaluationPeriods: Integer
modified:                 # Update requires: Some interruptions → No interruption
                MetricName: String
modified:                 # Update requires: Some interruptions → No interruption
                Namespace: String
modified:                 # Update requires: Some interruptions → No interruption
                Period: Integer
modified:                 # Update requires: Some interruptions → No interruption
                Statistic: String
modified:                 # Update requires: Some interruptions → No interruption
                Threshold: Double
modified:                 # Update requires: Some interruptions → No interruption
                Unit: String
modified:       # Update requires: Some interruptions → Replacement
      BidPrice: String
modified:       # Update requires: Some interruptions → Replacement
modified:       Configurations: List of EMRConfiguration → List of Configuration  # Configuration: see above
modified:       # Update requires: Some interruptions → Replacement
      CustomAmiId: String
modified:       # Update requires: Some interruptions → Replacement
      EbsConfiguration:  # EbsConfiguration: see above
modified:       # Update requires: Some interruptions → No interruption
      InstanceCount: Integer
modified:       # Update requires: Some interruptions → Replacement
      InstanceType: String
modified:       # Update requires: Some interruptions → Replacement
      Market: String
modified:       # Update requires: Some interruptions → Replacement
      Name: String
modified:     # Update requires: Some interruptions → Replacement
    Ec2KeyName: String
modified:     # Update requires: Some interruptions → Replacement
    Ec2SubnetId: String
modified:     # Update requires: Some interruptions → Replacement
    Ec2SubnetIds:
      - String
modified:     # Update requires: Some interruptions → Replacement
    EmrManagedMasterSecurityGroup: String
modified:     # Update requires: Some interruptions → Replacement
    EmrManagedSlaveSecurityGroup: String
modified:     # Update requires: Some interruptions → Replacement
    HadoopVersion: String
modified:     # Update requires: Some interruptions → Replacement
    KeepJobFlowAliveWhenNoSteps: Boolean
modified:     # Update requires: Some interruptions → Replacement
    MasterInstanceFleet:  # InstanceFleetConfig: see above
modified:     # Update requires: Some interruptions → Replacement
    MasterInstanceGroup:  # InstanceGroupConfig: see above
modified:     # Update requires: Some interruptions → Replacement
    Placement:
modified:       # Update requires: Some interruptions → Replacement
      AvailabilityZone: String
modified:     # Update requires: Some interruptions → Replacement
    ServiceAccessSecurityGroup: String
    TaskInstanceFleets:  # InstanceFleetConfig: see above
    TaskInstanceGroups:  # InstanceGroupConfig: see above
modified:     # Update requires: Some interruptions → No interruption
    TerminationProtected: Boolean
modified:     # Update requires: Some interruptions → No interruption
    UnhealthyNodeReplacement: Boolean
  KerberosAttributes:
modified:     # Update requires: Replacement → No interruption
    ADDomainJoinPassword: String
modified:     # Update requires: Replacement → No interruption
    ADDomainJoinUser: String
modified:     # Update requires: Replacement → No interruption
    CrossRealmTrustPrincipalPassword: String
modified:     # Update requires: Replacement → No interruption
    KdcAdminPassword: String
modified:     # Update requires: Replacement → No interruption
    Realm: String
removed:   MonitoringConfiguration:
removed:     CloudWatchLogConfiguration:
removed:       EncryptionKeyArn: String
removed:       Enabled: Boolean
removed:       LogStreamNamePrefix: String
removed:       LogGroupName: String
removed:       LogTypes: Json
  PlacementGroupConfigs:
modified:     - # Update requires: Replacement → No interruption
      InstanceRole: String
modified:       # Update requires: Replacement → No interruption
      PlacementStrategy: String
modified:   # Duplicates allowed: Yes → No
  Steps:
modified:     - # Update requires: Replacement → No interruption
      ActionOnFailure: String
modified:       # Update requires: Replacement → No interruption
      HadoopJarStep:
modified:         # Update requires: Replacement → No interruption
modified:         # Duplicates allowed: Yes → No
        Args:
          - String
modified:         # Update requires: Replacement → No interruption
        Jar: String
modified:         # Update requires: Replacement → No interruption
        MainClass: String
modified:         # Update requires: Replacement → No interruption
        StepProperties:
modified:           - # Update requires: Replacement → No interruption
            Key: String
modified:             # Update requires: Replacement → No interruption
            Value: String
modified:       # Update requires: Replacement → No interruption
      Name: String
added:   VisibleToAllUsers: Boolean
Fn::GetAtt:
removed:   Id: String
AWS::QuickSight::DataSourceLink to AWS::QuickSight::DataSource
Type: AWS::QuickSight::DataSource
Properties:
  AlternateDataSourceParameters:
added:     - S3TablesParameters:
added:         TableBucketArn: String
  Credentials:
    CredentialPair:
      AlternateDataSourceParameters:  # DataSourceParameters: see above
  DataSourceParameters:  # DataSourceParameters: see above
AWS::RDS::DBClusterLink to AWS::RDS::DBCluster
Type: AWS::RDS::DBCluster
Fn::GetAtt:
added:   StorageEncryptionType: String
AWS::SageMaker::ModelLink to AWS::SageMaker::Model
Type: AWS::SageMaker::Model
Properties:
modified:   # Duplicates allowed: Not specified → Yes
  Containers:
modified:   # Duplicates allowed: Not specified → Yes
  Tags:
  VpcConfig:
modified:     # Duplicates allowed: Not specified → Yes
    SecurityGroupIds:
      - String
modified:     # Duplicates allowed: Not specified → Yes
    Subnets:
      - String
Fn::GetAtt:
added:   ModelArn: String