全部产品
Search
文档中心

资源编排:DATASOURCE::VPC::NatGateway

更新时间:Sep 02, 2024

DATASOURCE::VPC::NatGateway类型用于查询单个NAT网关详情。

语法

{
  "Type": "DATASOURCE::VPC::NatGateway",
  "Properties": {
    "NatGatewayId": String,
    "RefreshOptions": String
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

NatGatewayId

String

NAT网关ID。

RefreshOptions

String

当资源栈更新时,数据源资源的刷新策略。

有效值:

  • Never(默认值):更新堆栈时,从不刷新数据源资源。

  • Always:更新堆栈时,始终刷新数据源资源。

返回值

Fn::GetAtt

  • Description:NAT网关的描述信息。

  • NatGatewayName:NAT网关实例名称。

  • EipBindMode:NAT网关的EIP绑定模式。

  • ForwardTableIds:DNAT表ID。

  • CreateTime:NAT网关的创建时间。

  • IpLists:NAT网关的IP信息列表。

  • SecurityProtectionEnabled:是否开启防火墙功能。

  • DeletionProtection:是否开启删除保护功能。

  • AutoPay:是否开启自动付费。

  • BusinessStatus:NAT网关的业务状态。

  • NatType:NAT网关的类型。

  • InternetChargeType:NAT网关的计费类型。

  • NatGatewayPrivateInfo:增强型公网NAT网关的私网信息。

  • VpcId:NAT网关所属的VPC ID。

  • SnatTableIds:SNAT表ID。

  • NetworkType:NAT网关的类型。

  • ExpiredTime:NAT网关到期的时间。

  • IcmpReplyEnabled:是否开启ICMP不代回功能。

  • PaymentType:NAT网关的付费模式。

  • Spec:公网NAT网关的规格。

  • NatGatewayId:NAT网关的ID。

示例

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  NatGatewayId:
    Type: String
    Description:
      en: The ID of the NAT gateway.
    Required: true
Resources:
  ExtensionDataSource:
    Type: DATASOURCE::VPC::NatGateway
    Properties:
      NatGatewayId:
        Ref: NatGatewayId
Outputs:
  Description:
    Description: The description of the NAT gateway.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - Description
  NatGatewayName:
    Description: The name of the NAT gateway. The name must be 1 to 128 characters in length, and cannot start with http:// or https://. If this parameter is not set, the system automatically assigns a name to the NAT gateway.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - NatGatewayName
  EipBindMode:
    Description: |-
      The mode in which the NAT gateway is associated with an elastic IP address (EIP). Valid values:
      * MULTI_BINDED: multi-EIP-to-ENI mode* NAT: NAT mode, which is compatible with IPv4 addresses.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - EipBindMode
  ForwardTableIds:
    Description: The ID of the Destination Network Address Translation (DNAT) table.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - ForwardTableIds
  CreateTime:
    Description: The time when the NAT gateway was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - CreateTime
  IpLists:
    Description: The list of elastic IP addresses (EIPs) that are associated with the Internet NAT gateway.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - IpLists
  SecurityProtectionEnabled:
    Description: |-
      Indicates whether the firewall feature is enabled. Valid values:
      false: no
      true: yes
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - SecurityProtectionEnabled
  DeletionProtection:
    Description: |-
      Indicates whether the deletion protection feature is enabled. Valid values:
      * true: yes
      * false: no
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - DeletionProtection
  AutoPay:
    Description: |-
      Indicates whether automatic payment is enabled. Valid values:
      * false: no
      true: yes
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - AutoPay
  BusinessStatus:
    Description: |-
      The status of the NAT gateway. Valid values:
      * Normal: normal
      * FinancialLocked: locked due to overdue payments
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - BusinessStatus
  NatType:
    Description: The type of the NAT gateway. The value is set to Enhanced (enhanced NAT gateway).
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - NatType
  InternetChargeType:
    Description: |-
      The metering method of the NAT gateway. Valid values:
      * PayBySpec: pay-by-specification
      * PayByLcu: pay-by-CU
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - InternetChargeType
  NatGatewayPrivateInfo:
    Description: The private network information about the enhanced Internet NAT gateway.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - NatGatewayPrivateInfo
  VpcId:
    Description: The ID of the VPC where the NAT gateway is deployed.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - VpcId
  SnatTableIds:
    Description: The ID of the SNAT table of the NAT gateway.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - SnatTableIds
  NetworkType:
    Description: |-
      The type of NAT gateway. Valid values:
      * internet: an Internet NAT gateway
      * intranet: a VPC NAT gateway
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - NetworkType
  ExpiredTime:
    Description: The time when the NAT gateway expires.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - ExpiredTime
  IcmpReplyEnabled:
    Description: |-
      Indicates whether the ICMP non-retrieval feature is enabled. Valid values:
      * true: yes
      * false: no
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - IcmpReplyEnabled
  PaymentType:
    Description: 'The billing method of the NAT gateway. Valid values:  PrePaid: subscription PostPaid: pay-as-you-go.'
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - PaymentType
  Spec:
    Description: The size of the NAT gateway. An empty value is returned for the parameter. If InternetChargeType is set to PayByLcu, an empty value is returned.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - Spec
  NatGatewayId:
    Description: The ID of the NAT gateway.
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - NatGatewayId
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "NatGatewayId": {
      "Type": "String",
      "Description": {
        "en": "The ID of the NAT gateway."
      },
      "Required": true
    }
  },
  "Resources": {
    "ExtensionDataSource": {
      "Type": "DATASOURCE::VPC::NatGateway",
      "Properties": {
        "NatGatewayId": {
          "Ref": "NatGatewayId"
        }
      }
    }
  },
  "Outputs": {
    "Description": {
      "Description": "The description of the NAT gateway.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "Description"
        ]
      }
    },
    "NatGatewayName": {
      "Description": "The name of the NAT gateway. The name must be 1 to 128 characters in length, and cannot start with http:// or https://. If this parameter is not set, the system automatically assigns a name to the NAT gateway.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "NatGatewayName"
        ]
      }
    },
    "EipBindMode": {
      "Description": "The mode in which the NAT gateway is associated with an elastic IP address (EIP). Valid values:\n* MULTI_BINDED: multi-EIP-to-ENI mode* NAT: NAT mode, which is compatible with IPv4 addresses.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "EipBindMode"
        ]
      }
    },
    "ForwardTableIds": {
      "Description": "The ID of the Destination Network Address Translation (DNAT) table.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "ForwardTableIds"
        ]
      }
    },
    "CreateTime": {
      "Description": "The time when the NAT gateway was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "CreateTime"
        ]
      }
    },
    "IpLists": {
      "Description": "The list of elastic IP addresses (EIPs) that are associated with the Internet NAT gateway.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "IpLists"
        ]
      }
    },
    "SecurityProtectionEnabled": {
      "Description": "Indicates whether the firewall feature is enabled. Valid values:\nfalse: no\ntrue: yes",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "SecurityProtectionEnabled"
        ]
      }
    },
    "DeletionProtection": {
      "Description": "Indicates whether the deletion protection feature is enabled. Valid values:\n* true: yes\n* false: no",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "DeletionProtection"
        ]
      }
    },
    "AutoPay": {
      "Description": "Indicates whether automatic payment is enabled. Valid values:\n* false: no\ntrue: yes",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "AutoPay"
        ]
      }
    },
    "BusinessStatus": {
      "Description": "The status of the NAT gateway. Valid values:\n* Normal: normal\n* FinancialLocked: locked due to overdue payments",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "BusinessStatus"
        ]
      }
    },
    "NatType": {
      "Description": "The type of the NAT gateway. The value is set to Enhanced (enhanced NAT gateway).",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "NatType"
        ]
      }
    },
    "InternetChargeType": {
      "Description": "The metering method of the NAT gateway. Valid values:\n* PayBySpec: pay-by-specification\n* PayByLcu: pay-by-CU",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "InternetChargeType"
        ]
      }
    },
    "NatGatewayPrivateInfo": {
      "Description": "The private network information about the enhanced Internet NAT gateway.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "NatGatewayPrivateInfo"
        ]
      }
    },
    "VpcId": {
      "Description": "The ID of the VPC where the NAT gateway is deployed.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "VpcId"
        ]
      }
    },
    "SnatTableIds": {
      "Description": "The ID of the SNAT table of the NAT gateway.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "SnatTableIds"
        ]
      }
    },
    "NetworkType": {
      "Description": "The type of NAT gateway. Valid values:\n* internet: an Internet NAT gateway\n* intranet: a VPC NAT gateway",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "NetworkType"
        ]
      }
    },
    "ExpiredTime": {
      "Description": "The time when the NAT gateway expires.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "ExpiredTime"
        ]
      }
    },
    "IcmpReplyEnabled": {
      "Description": "Indicates whether the ICMP non-retrieval feature is enabled. Valid values:\n* true: yes\n* false: no",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "IcmpReplyEnabled"
        ]
      }
    },
    "PaymentType": {
      "Description": "The billing method of the NAT gateway. Valid values:  PrePaid: subscription PostPaid: pay-as-you-go.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "PaymentType"
        ]
      }
    },
    "Spec": {
      "Description": "The size of the NAT gateway. An empty value is returned for the parameter. If InternetChargeType is set to PayByLcu, an empty value is returned.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "Spec"
        ]
      }
    },
    "NatGatewayId": {
      "Description": "The ID of the NAT gateway.",
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "NatGatewayId"
        ]
      }
    }
  }
}