/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The metadata options for the instance.See Also:
AWS
* API Reference
The state of the metadata option changes.
The following states are * possible:
pending
- The metadata options are
* being updated. The instance is not yet ready to process metadata traffic with
* the new selection.
applied
- The metadata
* options have been successfully applied to the instance.
The state of the metadata option changes.
The following states are * possible:
pending
- The metadata options are
* being updated. The instance is not yet ready to process metadata traffic with
* the new selection.
applied
- The metadata
* options have been successfully applied to the instance.
The state of the metadata option changes.
The following states are * possible:
pending
- The metadata options are
* being updated. The instance is not yet ready to process metadata traffic with
* the new selection.
applied
- The metadata
* options have been successfully applied to the instance.
The state of the metadata option changes.
The following states are * possible:
pending
- The metadata options are
* being updated. The instance is not yet ready to process metadata traffic with
* the new selection.
applied
- The metadata
* options have been successfully applied to the instance.
The state of the metadata option changes.
The following states are * possible:
pending
- The metadata options are
* being updated. The instance is not yet ready to process metadata traffic with
* the new selection.
applied
- The metadata
* options have been successfully applied to the instance.
The state of the metadata option changes.
The following states are * possible:
pending
- The metadata options are
* being updated. The instance is not yet ready to process metadata traffic with
* the new selection.
applied
- The metadata
* options have been successfully applied to the instance.
The state of token usage for your instance metadata requests.
If the
* state is optional
, you can choose whether to retrieve instance
* metadata with 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 by 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 all instance
* metadata retrieval requests. In this state, retrieving the IAM role credential
* always returns the version 2.0 credentials. The version 1.0 credentials are not
* available.
Not all instance blueprints in Lightsail support
* version 2.0 credentials. Use the MetadataNoToken
instance metric to
* track the number of calls to the instance metadata service that are using
* version 1.0 credentials. For more information, see Viewing
* instance metrics in Amazon Lightsail in the Amazon Lightsail Developer
* Guide.
The state of token usage for your instance metadata requests.
If the
* state is optional
, you can choose whether to retrieve instance
* metadata with 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 by 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 all instance
* metadata retrieval requests. In this state, retrieving the IAM role credential
* always returns the version 2.0 credentials. The version 1.0 credentials are not
* available.
Not all instance blueprints in Lightsail support
* version 2.0 credentials. Use the MetadataNoToken
instance metric to
* track the number of calls to the instance metadata service that are using
* version 1.0 credentials. For more information, see Viewing
* instance metrics in Amazon Lightsail in the Amazon Lightsail Developer
* Guide.
The state of token usage for your instance metadata requests.
If the
* state is optional
, you can choose whether to retrieve instance
* metadata with 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 by 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 all instance
* metadata retrieval requests. In this state, retrieving the IAM role credential
* always returns the version 2.0 credentials. The version 1.0 credentials are not
* available.
Not all instance blueprints in Lightsail support
* version 2.0 credentials. Use the MetadataNoToken
instance metric to
* track the number of calls to the instance metadata service that are using
* version 1.0 credentials. For more information, see Viewing
* instance metrics in Amazon Lightsail in the Amazon Lightsail Developer
* Guide.
The state of token usage for your instance metadata requests.
If the
* state is optional
, you can choose whether to retrieve instance
* metadata with 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 by 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 all instance
* metadata retrieval requests. In this state, retrieving the IAM role credential
* always returns the version 2.0 credentials. The version 1.0 credentials are not
* available.
Not all instance blueprints in Lightsail support
* version 2.0 credentials. Use the MetadataNoToken
instance metric to
* track the number of calls to the instance metadata service that are using
* version 1.0 credentials. For more information, see Viewing
* instance metrics in Amazon Lightsail in the Amazon Lightsail Developer
* Guide.
The state of token usage for your instance metadata requests.
If the
* state is optional
, you can choose whether to retrieve instance
* metadata with 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 by 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 all instance
* metadata retrieval requests. In this state, retrieving the IAM role credential
* always returns the version 2.0 credentials. The version 1.0 credentials are not
* available.
Not all instance blueprints in Lightsail support
* version 2.0 credentials. Use the MetadataNoToken
instance metric to
* track the number of calls to the instance metadata service that are using
* version 1.0 credentials. For more information, see Viewing
* instance metrics in Amazon Lightsail in the Amazon Lightsail Developer
* Guide.
The state of token usage for your instance metadata requests.
If the
* state is optional
, you can choose whether to retrieve instance
* metadata with 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 by 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 all instance
* metadata retrieval requests. In this state, retrieving the IAM role credential
* always returns the version 2.0 credentials. The version 1.0 credentials are not
* available.
Not all instance blueprints in Lightsail support
* version 2.0 credentials. Use the MetadataNoToken
instance metric to
* track the number of calls to the instance metadata service that are using
* version 1.0 credentials. For more information, see Viewing
* instance metrics in Amazon Lightsail in the Amazon Lightsail Developer
* Guide.
Indicates whether the HTTP metadata endpoint on your instances is enabled or * disabled.
If the value is disabled
, you cannot access your
* instance metadata.
Indicates whether the HTTP metadata endpoint on your instances is enabled or * disabled.
If the value is disabled
, you cannot access your
* instance metadata.
Indicates whether the HTTP metadata endpoint on your instances is enabled or * disabled.
If the value is disabled
, you cannot access your
* instance metadata.
Indicates whether the HTTP metadata endpoint on your instances is enabled or * disabled.
If the value is disabled
, you cannot access your
* instance metadata.
Indicates whether the HTTP metadata endpoint on your instances is enabled or * disabled.
If the value is disabled
, you cannot access your
* instance metadata.
Indicates whether the HTTP metadata endpoint on your instances is enabled or * disabled.
If the value is disabled
, you cannot access your
* instance metadata.
The desired HTTP PUT response hop limit for instance metadata requests. A * larger number means that the instance metadata requests can travel farther.
*/ inline int GetHttpPutResponseHopLimit() const{ return m_httpPutResponseHopLimit; } /** *The desired HTTP PUT response hop limit for instance metadata requests. A * larger number means that the instance metadata requests can travel farther.
*/ inline bool HttpPutResponseHopLimitHasBeenSet() const { return m_httpPutResponseHopLimitHasBeenSet; } /** *The desired HTTP PUT response hop limit for instance metadata requests. A * larger number means that the instance metadata requests can travel farther.
*/ inline void SetHttpPutResponseHopLimit(int value) { m_httpPutResponseHopLimitHasBeenSet = true; m_httpPutResponseHopLimit = value; } /** *The desired HTTP PUT response hop limit for instance metadata requests. A * larger number means that the instance metadata requests can travel farther.
*/ inline InstanceMetadataOptions& WithHttpPutResponseHopLimit(int value) { SetHttpPutResponseHopLimit(value); return *this;} /** *Indicates whether the IPv6 endpoint for the instance metadata service is * enabled or disabled.
*/ inline const HttpProtocolIpv6& GetHttpProtocolIpv6() const{ return m_httpProtocolIpv6; } /** *Indicates whether the IPv6 endpoint for the instance metadata service is * enabled or disabled.
*/ inline bool HttpProtocolIpv6HasBeenSet() const { return m_httpProtocolIpv6HasBeenSet; } /** *Indicates whether the IPv6 endpoint for the instance metadata service is * enabled or disabled.
*/ inline void SetHttpProtocolIpv6(const HttpProtocolIpv6& value) { m_httpProtocolIpv6HasBeenSet = true; m_httpProtocolIpv6 = value; } /** *Indicates whether the IPv6 endpoint for the instance metadata service is * enabled or disabled.
*/ inline void SetHttpProtocolIpv6(HttpProtocolIpv6&& value) { m_httpProtocolIpv6HasBeenSet = true; m_httpProtocolIpv6 = std::move(value); } /** *Indicates whether the IPv6 endpoint for the instance metadata service is * enabled or disabled.
*/ inline InstanceMetadataOptions& WithHttpProtocolIpv6(const HttpProtocolIpv6& value) { SetHttpProtocolIpv6(value); return *this;} /** *Indicates whether the IPv6 endpoint for the instance metadata service is * enabled or disabled.
*/ inline InstanceMetadataOptions& WithHttpProtocolIpv6(HttpProtocolIpv6&& value) { SetHttpProtocolIpv6(std::move(value)); return *this;} private: InstanceMetadataState m_state; bool m_stateHasBeenSet = false; HttpTokens m_httpTokens; bool m_httpTokensHasBeenSet = false; HttpEndpoint m_httpEndpoint; bool m_httpEndpointHasBeenSet = false; int m_httpPutResponseHopLimit; bool m_httpPutResponseHopLimitHasBeenSet = false; HttpProtocolIpv6 m_httpProtocolIpv6; bool m_httpProtocolIpv6HasBeenSet = false; }; } // namespace Model } // namespace Lightsail } // namespace Aws