Class: AWSCDK::Autoscaling::CfnLaunchConfiguration::MetadataOptionsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
autoscaling/cfn_launch_configuration.rb

Overview

MetadataOptions is a property of AWS::AutoScaling::LaunchConfiguration that describes metadata options for the instances.

For more information, see Configure the instance metadata options in the Amazon EC2 Auto Scaling User Guide .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(http_endpoint: nil, http_put_response_hop_limit: nil, http_tokens: nil) ⇒ MetadataOptionsProperty

Returns a new instance of MetadataOptionsProperty.

Parameters:

  • http_endpoint (String, nil) (defaults to: nil)

    This parameter enables or disables the HTTP metadata endpoint on your instances.

  • http_put_response_hop_limit (Numeric, nil) (defaults to: nil)

    The desired HTTP PUT response hop limit for instance metadata requests.

  • http_tokens (String, nil) (defaults to: nil)

    The state of token usage for your instance metadata requests.



937
938
939
940
941
942
943
944
# File 'autoscaling/cfn_launch_configuration.rb', line 937

def initialize(http_endpoint: nil, http_put_response_hop_limit: nil, http_tokens: nil)
  @http_endpoint = http_endpoint
  Jsii::Type.check_type(@http_endpoint, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "httpEndpoint") unless @http_endpoint.nil?
  @http_put_response_hop_limit = http_put_response_hop_limit
  Jsii::Type.check_type(@http_put_response_hop_limit, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "httpPutResponseHopLimit") unless @http_put_response_hop_limit.nil?
  @http_tokens = http_tokens
  Jsii::Type.check_type(@http_tokens, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "httpTokens") unless @http_tokens.nil?
end

Instance Attribute Details

#http_endpointString? (readonly)

This parameter enables or disables the HTTP metadata endpoint on your instances.

If the parameter is not specified, the default state is enabled .

If you specify a value of disabled , you will not be able to access your instance metadata.



954
955
956
# File 'autoscaling/cfn_launch_configuration.rb', line 954

def http_endpoint
  @http_endpoint
end

#http_put_response_hop_limitNumeric? (readonly)

The desired HTTP PUT response hop limit for instance metadata requests.

The larger the number, the further instance metadata requests can travel.

Default: 1



963
964
965
# File 'autoscaling/cfn_launch_configuration.rb', line 963

def http_put_response_hop_limit
  @http_put_response_hop_limit
end

#http_tokensString? (readonly)

The state of token usage for your instance metadata requests.

If the parameter is not specified in the request, the default state is optional .

If the state is optional , you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned.

If the state is required , you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.



974
975
976
# File 'autoscaling/cfn_launch_configuration.rb', line 974

def http_tokens
  @http_tokens
end

Class Method Details

.jsii_propertiesObject



976
977
978
979
980
981
982
# File 'autoscaling/cfn_launch_configuration.rb', line 976

def self.jsii_properties
  {
    :http_endpoint => "httpEndpoint",
    :http_put_response_hop_limit => "httpPutResponseHopLimit",
    :http_tokens => "httpTokens",
  }
end

Instance Method Details

#to_jsiiObject



984
985
986
987
988
989
990
991
992
# File 'autoscaling/cfn_launch_configuration.rb', line 984

def to_jsii
  result = {}
  result.merge!({
    "httpEndpoint" => @http_endpoint,
    "httpPutResponseHopLimit" => @http_put_response_hop_limit,
    "httpTokens" => @http_tokens,
  })
  result.compact
end