aws-sdk-ec2 1.63.0 → 1.64.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f3990abbcea5ce2cf1b4b7596be47beb890875c7
4
- data.tar.gz: 15c5ddfe7ea716ed7c86b2ff42f0213a08d0ddae
3
+ metadata.gz: ae1f64acb3e8d4e1101231a17227481e6dd0521d
4
+ data.tar.gz: 0ff93c8b834e217aa8d337cd01f072f9192797dd
5
5
  SHA512:
6
- metadata.gz: 9eb15eaf83ce08be5f0f4dcd1e8ecdcd5910df4d3e2206e95e53b7743c0c7d22d801eb606321d3a5141e765ed1069a804972f0e185a03f057b6e2c6ab8617a2c
7
- data.tar.gz: cdd494ae622d7fbb4733f1c7bd30e37733dbd4d5b13eec1431f24ca7d8a91ad6d4dead3640f7dbab399ccce608f4d700493dcc3456e94d9d44e928dfaf41cb0d
6
+ metadata.gz: 0475f853783fbef53d4c1fc24439b669ccd4a285e3f19269639f5f151735a267bf373b7d996a116e29213aa58fa473663afbaa04a46b77eb65f5724dd3e0de19
7
+ data.tar.gz: c68392707237a651ca152457fec35c600ffba22478fd92691108323a15c651c545dea15be5a1e50880bd07dfa4adfd8e3f685d9a4f2f1effc4217a58e9bb43b1
@@ -65,6 +65,6 @@ require_relative 'aws-sdk-ec2/customizations'
65
65
  # @service
66
66
  module Aws::EC2
67
67
 
68
- GEM_VERSION = '1.63.0'
68
+ GEM_VERSION = '1.64.0'
69
69
 
70
70
  end
@@ -662,6 +662,54 @@ module Aws::EC2
662
662
  req.send_request(options)
663
663
  end
664
664
 
665
+ # Applies a security group to the association between the target network
666
+ # and the Client VPN endpoint. This action replaces the existing
667
+ # security groups with the specified security groups.
668
+ #
669
+ # @option params [required, String] :client_vpn_endpoint_id
670
+ # The ID of the Client VPN endpoint.
671
+ #
672
+ # @option params [required, String] :vpc_id
673
+ # The ID of the VPC in which the associated target network is located.
674
+ #
675
+ # @option params [required, Array<String>] :security_group_ids
676
+ # The IDs of the security groups to apply to the associated target
677
+ # network. Up to 5 security groups can be applied to an associated
678
+ # target network.
679
+ #
680
+ # @option params [Boolean] :dry_run
681
+ # Checks whether you have the required permissions for the action,
682
+ # without actually making the request, and provides an error response.
683
+ # If you have the required permissions, the error response is
684
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
685
+ #
686
+ # @return [Types::ApplySecurityGroupsToClientVpnTargetNetworkResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
687
+ #
688
+ # * {Types::ApplySecurityGroupsToClientVpnTargetNetworkResult#security_group_ids #security_group_ids} => Array&lt;String&gt;
689
+ #
690
+ # @example Request syntax with placeholder values
691
+ #
692
+ # resp = client.apply_security_groups_to_client_vpn_target_network({
693
+ # client_vpn_endpoint_id: "String", # required
694
+ # vpc_id: "String", # required
695
+ # security_group_ids: ["String"], # required
696
+ # dry_run: false,
697
+ # })
698
+ #
699
+ # @example Response structure
700
+ #
701
+ # resp.security_group_ids #=> Array
702
+ # resp.security_group_ids[0] #=> String
703
+ #
704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ApplySecurityGroupsToClientVpnTargetNetwork AWS API Documentation
705
+ #
706
+ # @overload apply_security_groups_to_client_vpn_target_network(params = {})
707
+ # @param [Hash] params ({})
708
+ def apply_security_groups_to_client_vpn_target_network(params = {}, options = {})
709
+ req = build_request(:apply_security_groups_to_client_vpn_target_network, params)
710
+ req.send_request(options)
711
+ end
712
+
665
713
  # Assigns one or more IPv6 addresses to the specified network interface.
666
714
  # You can specify one or more specific IPv6 addresses, or you can
667
715
  # specify the number of IPv6 addresses to be automatically assigned from
@@ -946,6 +994,52 @@ module Aws::EC2
946
994
  req.send_request(options)
947
995
  end
948
996
 
997
+ # Associates a target network with a Client VPN endpoint. A target
998
+ # network is a subnet in a VPC. You can associate multiple subnets from
999
+ # the same VPC with a Client VPN endpoint. You can associate only one
1000
+ # subnet in each Availability Zone. We recommend that you associate at
1001
+ # least two subnets to provide Availability Zone redundancy.
1002
+ #
1003
+ # @option params [required, String] :client_vpn_endpoint_id
1004
+ # The ID of the Client VPN endpoint.
1005
+ #
1006
+ # @option params [required, String] :subnet_id
1007
+ # The ID of the subnet to associate with the Client VPN endpoint.
1008
+ #
1009
+ # @option params [Boolean] :dry_run
1010
+ # Checks whether you have the required permissions for the action,
1011
+ # without actually making the request, and provides an error response.
1012
+ # If you have the required permissions, the error response is
1013
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1014
+ #
1015
+ # @return [Types::AssociateClientVpnTargetNetworkResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1016
+ #
1017
+ # * {Types::AssociateClientVpnTargetNetworkResult#association_id #association_id} => String
1018
+ # * {Types::AssociateClientVpnTargetNetworkResult#status #status} => Types::AssociationStatus
1019
+ #
1020
+ # @example Request syntax with placeholder values
1021
+ #
1022
+ # resp = client.associate_client_vpn_target_network({
1023
+ # client_vpn_endpoint_id: "String", # required
1024
+ # subnet_id: "String", # required
1025
+ # dry_run: false,
1026
+ # })
1027
+ #
1028
+ # @example Response structure
1029
+ #
1030
+ # resp.association_id #=> String
1031
+ # resp.status.code #=> String, one of "associating", "associated", "association-failed", "disassociating", "disassociated"
1032
+ # resp.status.message #=> String
1033
+ #
1034
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateClientVpnTargetNetwork AWS API Documentation
1035
+ #
1036
+ # @overload associate_client_vpn_target_network(params = {})
1037
+ # @param [Hash] params ({})
1038
+ def associate_client_vpn_target_network(params = {}, options = {})
1039
+ req = build_request(:associate_client_vpn_target_network, params)
1040
+ req.send_request(options)
1041
+ end
1042
+
949
1043
  # Associates a set of DHCP options (that you've previously created)
950
1044
  # with the specified VPC, or associates no DHCP options with the VPC.
951
1045
  #
@@ -1611,6 +1705,64 @@ module Aws::EC2
1611
1705
  req.send_request(options)
1612
1706
  end
1613
1707
 
1708
+ # Adds an ingress authorization rule to a Client VPN endpoint. Ingress
1709
+ # authorization rules act as firewall rules that grant access to
1710
+ # networks. You must configure ingress authorization rules to enable
1711
+ # clients to access resources in AWS or on-premises networks.
1712
+ #
1713
+ # @option params [required, String] :client_vpn_endpoint_id
1714
+ # The ID of the Client VPN endpoint.
1715
+ #
1716
+ # @option params [required, String] :target_network_cidr
1717
+ # The IPv4 address range, in CIDR notation, of the network for which
1718
+ # access is being authorized.
1719
+ #
1720
+ # @option params [String] :access_group_id
1721
+ # The ID of the Active Directory group to grant access.
1722
+ #
1723
+ # @option params [Boolean] :authorize_all_groups
1724
+ # Indicates whether to grant access to all clients. Use `true` to grant
1725
+ # all clients who successfully establish a VPN connection access to the
1726
+ # network.
1727
+ #
1728
+ # @option params [String] :description
1729
+ # A brief description of the authorization rule.
1730
+ #
1731
+ # @option params [Boolean] :dry_run
1732
+ # Checks whether you have the required permissions for the action,
1733
+ # without actually making the request, and provides an error response.
1734
+ # If you have the required permissions, the error response is
1735
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
1736
+ #
1737
+ # @return [Types::AuthorizeClientVpnIngressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1738
+ #
1739
+ # * {Types::AuthorizeClientVpnIngressResult#status #status} => Types::ClientVpnAuthorizationRuleStatus
1740
+ #
1741
+ # @example Request syntax with placeholder values
1742
+ #
1743
+ # resp = client.authorize_client_vpn_ingress({
1744
+ # client_vpn_endpoint_id: "String", # required
1745
+ # target_network_cidr: "String", # required
1746
+ # access_group_id: "String",
1747
+ # authorize_all_groups: false,
1748
+ # description: "String",
1749
+ # dry_run: false,
1750
+ # })
1751
+ #
1752
+ # @example Response structure
1753
+ #
1754
+ # resp.status.code #=> String, one of "authorizing", "active", "failed", "revoking"
1755
+ # resp.status.message #=> String
1756
+ #
1757
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AuthorizeClientVpnIngress AWS API Documentation
1758
+ #
1759
+ # @overload authorize_client_vpn_ingress(params = {})
1760
+ # @param [Hash] params ({})
1761
+ def authorize_client_vpn_ingress(params = {}, options = {})
1762
+ req = build_request(:authorize_client_vpn_ingress, params)
1763
+ req.send_request(options)
1764
+ end
1765
+
1614
1766
  # \[EC2-VPC only\] Adds one or more egress rules to a security group for
1615
1767
  # use with a VPC. Specifically, this action permits instances to send
1616
1768
  # traffic to one or more destination IPv4 or IPv6 CIDR address ranges,
@@ -3144,6 +3296,190 @@ module Aws::EC2
3144
3296
  req.send_request(options)
3145
3297
  end
3146
3298
 
3299
+ # Creates a Client VPN endpoint. A Client VPN endpoint is the resource
3300
+ # you create and configure to enable and manage client VPN sessions. It
3301
+ # is the destination endpoint at which all client VPN sessions are
3302
+ # terminated.
3303
+ #
3304
+ # @option params [required, String] :client_cidr_block
3305
+ # The IPv4 address range, in CIDR notation, from which to assign client
3306
+ # IP addresses. The address range cannot overlap with the local CIDR of
3307
+ # the VPC in which the associated subnet is located, or the routes that
3308
+ # you add manually. The address range cannot be changed after the Client
3309
+ # VPN endpoint has been created. The CIDR block should be /22 or
3310
+ # greater.
3311
+ #
3312
+ # @option params [required, String] :server_certificate_arn
3313
+ # The ARN of the server certificate. For more information, see the [AWS
3314
+ # Certificate Manager User
3315
+ # Guide](acm/latest/userguide/acm-overview.html) .
3316
+ #
3317
+ # @option params [required, Array<Types::ClientVpnAuthenticationRequest>] :authentication_options
3318
+ # Information about the authentication method to be used to authenticate
3319
+ # clients.
3320
+ #
3321
+ # @option params [required, Types::ConnectionLogOptions] :connection_log_options
3322
+ # Information about the client connection logging options.
3323
+ #
3324
+ # If you enable client connection logging, data about client connections
3325
+ # is sent to a Cloudwatch Logs log stream. The following information is
3326
+ # logged:
3327
+ #
3328
+ # * Client connection requests
3329
+ #
3330
+ # * Client connection results (successful and unsuccessful)
3331
+ #
3332
+ # * Reasons for unsuccessful client connection requests
3333
+ #
3334
+ # * Client connection termination time
3335
+ #
3336
+ # @option params [Array<String>] :dns_servers
3337
+ # Information about the DNS servers to be used for DNS resolution. A
3338
+ # Client VPN endpoint can have up to two DNS servers. If no DNS server
3339
+ # is specified, the DNS address of the VPC that is to be associated with
3340
+ # Client VPN endpoint is used as the DNS server.
3341
+ #
3342
+ # @option params [String] :transport_protocol
3343
+ # The transport protocol to be used by the VPN session.
3344
+ #
3345
+ # Default value: `udp`
3346
+ #
3347
+ # @option params [String] :description
3348
+ # A brief description of the Client VPN endpoint.
3349
+ #
3350
+ # @option params [Boolean] :dry_run
3351
+ # Checks whether you have the required permissions for the action,
3352
+ # without actually making the request, and provides an error response.
3353
+ # If you have the required permissions, the error response is
3354
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3355
+ #
3356
+ # @option params [String] :client_token
3357
+ # Unique, case-sensitive identifier you provide to ensure the
3358
+ # idempotency of the request. For more information, see [ How to Ensure
3359
+ # Idempotency][1].
3360
+ #
3361
+ # **A suitable default value is auto-generated.** You should normally
3362
+ # not need to pass this option.**
3363
+ #
3364
+ #
3365
+ #
3366
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html
3367
+ #
3368
+ # @return [Types::CreateClientVpnEndpointResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3369
+ #
3370
+ # * {Types::CreateClientVpnEndpointResult#client_vpn_endpoint_id #client_vpn_endpoint_id} => String
3371
+ # * {Types::CreateClientVpnEndpointResult#status #status} => Types::ClientVpnEndpointStatus
3372
+ # * {Types::CreateClientVpnEndpointResult#dns_name #dns_name} => String
3373
+ #
3374
+ # @example Request syntax with placeholder values
3375
+ #
3376
+ # resp = client.create_client_vpn_endpoint({
3377
+ # client_cidr_block: "String", # required
3378
+ # server_certificate_arn: "String", # required
3379
+ # authentication_options: [ # required
3380
+ # {
3381
+ # type: "certificate-authentication", # accepts certificate-authentication, directory-service-authentication
3382
+ # active_directory: {
3383
+ # directory_id: "String",
3384
+ # },
3385
+ # mutual_authentication: {
3386
+ # client_root_certificate_chain_arn: "String",
3387
+ # },
3388
+ # },
3389
+ # ],
3390
+ # connection_log_options: { # required
3391
+ # enabled: false,
3392
+ # cloudwatch_log_group: "String",
3393
+ # cloudwatch_log_stream: "String",
3394
+ # },
3395
+ # dns_servers: ["String"],
3396
+ # transport_protocol: "tcp", # accepts tcp, udp
3397
+ # description: "String",
3398
+ # dry_run: false,
3399
+ # client_token: "String",
3400
+ # })
3401
+ #
3402
+ # @example Response structure
3403
+ #
3404
+ # resp.client_vpn_endpoint_id #=> String
3405
+ # resp.status.code #=> String, one of "pending-associate", "available", "deleting", "deleted"
3406
+ # resp.status.message #=> String
3407
+ # resp.dns_name #=> String
3408
+ #
3409
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateClientVpnEndpoint AWS API Documentation
3410
+ #
3411
+ # @overload create_client_vpn_endpoint(params = {})
3412
+ # @param [Hash] params ({})
3413
+ def create_client_vpn_endpoint(params = {}, options = {})
3414
+ req = build_request(:create_client_vpn_endpoint, params)
3415
+ req.send_request(options)
3416
+ end
3417
+
3418
+ # Adds a route to a network to a Client VPN endpoint. Each Client VPN
3419
+ # endpoint has a route table that describes the available destination
3420
+ # network routes. Each route in the route table specifies the path for
3421
+ # traffic to specific resources or networks.
3422
+ #
3423
+ # @option params [required, String] :client_vpn_endpoint_id
3424
+ # The ID of the Client VPN endpoint to which to add the route.
3425
+ #
3426
+ # @option params [required, String] :destination_cidr_block
3427
+ # The IPv4 address range, in CIDR notation, of the route destination.
3428
+ # For example:
3429
+ #
3430
+ # * To add a route for Internet access, enter `0.0.0.0/0`
3431
+ #
3432
+ # * To add a route for a peered VPC, enter the peered VPC's IPv4 CIDR
3433
+ # range
3434
+ #
3435
+ # * To add a route for an on-premises network, enter the AWS
3436
+ # Site-to-Site VPN connection's IPv4 CIDR range
3437
+ #
3438
+ # Route address ranges cannot overlap with the CIDR range specified for
3439
+ # client allocation.
3440
+ #
3441
+ # @option params [required, String] :target_vpc_subnet_id
3442
+ # The ID of the subnet through which you want to route traffic. The
3443
+ # specified subnet must be an existing target network of the Client VPN
3444
+ # endpoint.
3445
+ #
3446
+ # @option params [String] :description
3447
+ # A brief description of the route.
3448
+ #
3449
+ # @option params [Boolean] :dry_run
3450
+ # Checks whether you have the required permissions for the action,
3451
+ # without actually making the request, and provides an error response.
3452
+ # If you have the required permissions, the error response is
3453
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
3454
+ #
3455
+ # @return [Types::CreateClientVpnRouteResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3456
+ #
3457
+ # * {Types::CreateClientVpnRouteResult#status #status} => Types::ClientVpnRouteStatus
3458
+ #
3459
+ # @example Request syntax with placeholder values
3460
+ #
3461
+ # resp = client.create_client_vpn_route({
3462
+ # client_vpn_endpoint_id: "String", # required
3463
+ # destination_cidr_block: "String", # required
3464
+ # target_vpc_subnet_id: "String", # required
3465
+ # description: "String",
3466
+ # dry_run: false,
3467
+ # })
3468
+ #
3469
+ # @example Response structure
3470
+ #
3471
+ # resp.status.code #=> String, one of "creating", "active", "failed", "deleting"
3472
+ # resp.status.message #=> String
3473
+ #
3474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateClientVpnRoute AWS API Documentation
3475
+ #
3476
+ # @overload create_client_vpn_route(params = {})
3477
+ # @param [Hash] params ({})
3478
+ def create_client_vpn_route(params = {}, options = {})
3479
+ req = build_request(:create_client_vpn_route, params)
3480
+ req.send_request(options)
3481
+ end
3482
+
3147
3483
  # Provides information to AWS about your VPN customer gateway device.
3148
3484
  # The customer gateway is the appliance at your end of the VPN
3149
3485
  # connection. (The device on the AWS side of the VPN connection is the
@@ -6274,6 +6610,9 @@ module Aws::EC2
6274
6610
  # @option params [required, Array<String>] :resources
6275
6611
  # The IDs of one or more resources, separated by spaces.
6276
6612
  #
6613
+ # Constraints: Up to 1000 resource IDs. We recommend breaking up this
6614
+ # request into smaller batches.
6615
+ #
6277
6616
  # @option params [required, Array<Types::Tag>] :tags
6278
6617
  # One or more tags. The `value` parameter is required, but if you don't
6279
6618
  # want the tag to have a value, specify the parameter with no value, and
@@ -6667,9 +7006,9 @@ module Aws::EC2
6667
7006
  #
6668
7007
  # @option params [Integer] :iops
6669
7008
  # The number of I/O operations per second (IOPS) to provision for the
6670
- # volume, with a maximum ratio of 50 IOPS/GiB. Range is 100 to
6671
- # 64,000IOPS for volumes in most regions. Maximum IOPS of 64,000 is
6672
- # guaranteed only on [Nitro-based
7009
+ # volume, with a maximum ratio of 50 IOPS/GiB. Range is 100 to 64,000
7010
+ # IOPS for volumes in most regions. Maximum IOPS of 64,000 is guaranteed
7011
+ # only on [Nitro-based
6673
7012
  # instances](AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances).
6674
7013
  # Other instance families guarantee performance up to 32,000 IOPS. For
6675
7014
  # more information, see [Amazon EBS Volume Types][1] in the *Amazon
@@ -7591,6 +7930,92 @@ module Aws::EC2
7591
7930
  req.send_request(options)
7592
7931
  end
7593
7932
 
7933
+ # Deletes the specified Client VPN endpoint. You must disassociate all
7934
+ # target networks before you can delete a Client VPN endpoint.
7935
+ #
7936
+ # @option params [required, String] :client_vpn_endpoint_id
7937
+ # The ID of the Client VPN to be deleted.
7938
+ #
7939
+ # @option params [Boolean] :dry_run
7940
+ # Checks whether you have the required permissions for the action,
7941
+ # without actually making the request, and provides an error response.
7942
+ # If you have the required permissions, the error response is
7943
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
7944
+ #
7945
+ # @return [Types::DeleteClientVpnEndpointResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7946
+ #
7947
+ # * {Types::DeleteClientVpnEndpointResult#status #status} => Types::ClientVpnEndpointStatus
7948
+ #
7949
+ # @example Request syntax with placeholder values
7950
+ #
7951
+ # resp = client.delete_client_vpn_endpoint({
7952
+ # client_vpn_endpoint_id: "String", # required
7953
+ # dry_run: false,
7954
+ # })
7955
+ #
7956
+ # @example Response structure
7957
+ #
7958
+ # resp.status.code #=> String, one of "pending-associate", "available", "deleting", "deleted"
7959
+ # resp.status.message #=> String
7960
+ #
7961
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteClientVpnEndpoint AWS API Documentation
7962
+ #
7963
+ # @overload delete_client_vpn_endpoint(params = {})
7964
+ # @param [Hash] params ({})
7965
+ def delete_client_vpn_endpoint(params = {}, options = {})
7966
+ req = build_request(:delete_client_vpn_endpoint, params)
7967
+ req.send_request(options)
7968
+ end
7969
+
7970
+ # Deletes a route from a Client VPN endpoint. You can only delete routes
7971
+ # that you manually added using the **CreateClientVpnRoute** action. You
7972
+ # cannot delete routes that were automatically added when associating a
7973
+ # subnet. To remove routes that have been automatically added,
7974
+ # disassociate the target subnet from the Client VPN endpoint.
7975
+ #
7976
+ # @option params [required, String] :client_vpn_endpoint_id
7977
+ # The ID of the Client VPN endpoint from which the route is to be
7978
+ # deleted.
7979
+ #
7980
+ # @option params [String] :target_vpc_subnet_id
7981
+ # The ID of the target subnet used by the route.
7982
+ #
7983
+ # @option params [required, String] :destination_cidr_block
7984
+ # The IPv4 address range, in CIDR notation, of the route to be deleted.
7985
+ #
7986
+ # @option params [Boolean] :dry_run
7987
+ # Checks whether you have the required permissions for the action,
7988
+ # without actually making the request, and provides an error response.
7989
+ # If you have the required permissions, the error response is
7990
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
7991
+ #
7992
+ # @return [Types::DeleteClientVpnRouteResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7993
+ #
7994
+ # * {Types::DeleteClientVpnRouteResult#status #status} => Types::ClientVpnRouteStatus
7995
+ #
7996
+ # @example Request syntax with placeholder values
7997
+ #
7998
+ # resp = client.delete_client_vpn_route({
7999
+ # client_vpn_endpoint_id: "String", # required
8000
+ # target_vpc_subnet_id: "String",
8001
+ # destination_cidr_block: "String", # required
8002
+ # dry_run: false,
8003
+ # })
8004
+ #
8005
+ # @example Response structure
8006
+ #
8007
+ # resp.status.code #=> String, one of "creating", "active", "failed", "deleting"
8008
+ # resp.status.message #=> String
8009
+ #
8010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteClientVpnRoute AWS API Documentation
8011
+ #
8012
+ # @overload delete_client_vpn_route(params = {})
8013
+ # @param [Hash] params ({})
8014
+ def delete_client_vpn_route(params = {}, options = {})
8015
+ req = build_request(:delete_client_vpn_route, params)
8016
+ req.send_request(options)
8017
+ end
8018
+
7594
8019
  # Deletes the specified customer gateway. You must delete the VPN
7595
8020
  # connection before you can delete the customer gateway.
7596
8021
  #
@@ -8626,6 +9051,9 @@ module Aws::EC2
8626
9051
  # @option params [required, Array<String>] :resources
8627
9052
  # The IDs of one or more resources, separated by spaces.
8628
9053
  #
9054
+ # Constraints: Up to 1000 resource IDs. We recommend breaking up this
9055
+ # request into smaller batches.
9056
+ #
8629
9057
  # @option params [Array<Types::Tag>] :tags
8630
9058
  # One or more tags to delete. Specify a tag key and an optional tag
8631
9059
  # value to delete specific tags. If you specify a tag key without a tag
@@ -10058,46 +10486,395 @@ module Aws::EC2
10058
10486
  # tag with the key `Owner` and the value `TeamA`, specify `tag:Owner`
10059
10487
  # for the filter name and `TeamA` for the filter value.
10060
10488
  #
10061
- # * `tag-key` - The key of a tag assigned to the resource. Use this
10062
- # filter to find all resources assigned a tag with a specific key,
10063
- # regardless of the tag value.
10489
+ # * `tag-key` - The key of a tag assigned to the resource. Use this
10490
+ # filter to find all resources assigned a tag with a specific key,
10491
+ # regardless of the tag value.
10492
+ #
10493
+ # * `vpc-id` - The ID of the VPC to which the instance is linked.
10494
+ #
10495
+ # `vpc-id` - The ID of the VPC that the instance is linked to.
10496
+ #
10497
+ # @option params [Boolean] :dry_run
10498
+ # Checks whether you have the required permissions for the action,
10499
+ # without actually making the request, and provides an error response.
10500
+ # If you have the required permissions, the error response is
10501
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10502
+ #
10503
+ # @option params [Array<String>] :instance_ids
10504
+ # One or more instance IDs. Must be instances linked to a VPC through
10505
+ # ClassicLink.
10506
+ #
10507
+ # @option params [Integer] :max_results
10508
+ # The maximum number of results to return for the request in a single
10509
+ # page. The remaining results of the initial request can be seen by
10510
+ # sending another request with the returned `NextToken` value. This
10511
+ # value can be between 5 and 1000. If `MaxResults` is given a value
10512
+ # larger than 1000, only 1000 results are returned. You cannot specify
10513
+ # this parameter and the instance IDs parameter in the same request.
10514
+ #
10515
+ # Constraint: If the value is greater than 1000, we return only 1000
10516
+ # items.
10517
+ #
10518
+ # @option params [String] :next_token
10519
+ # The token to retrieve the next page of results.
10520
+ #
10521
+ # @return [Types::DescribeClassicLinkInstancesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10522
+ #
10523
+ # * {Types::DescribeClassicLinkInstancesResult#instances #instances} => Array&lt;Types::ClassicLinkInstance&gt;
10524
+ # * {Types::DescribeClassicLinkInstancesResult#next_token #next_token} => String
10525
+ #
10526
+ # @example Request syntax with placeholder values
10527
+ #
10528
+ # resp = client.describe_classic_link_instances({
10529
+ # filters: [
10530
+ # {
10531
+ # name: "String",
10532
+ # values: ["String"],
10533
+ # },
10534
+ # ],
10535
+ # dry_run: false,
10536
+ # instance_ids: ["String"],
10537
+ # max_results: 1,
10538
+ # next_token: "String",
10539
+ # })
10540
+ #
10541
+ # @example Response structure
10542
+ #
10543
+ # resp.instances #=> Array
10544
+ # resp.instances[0].groups #=> Array
10545
+ # resp.instances[0].groups[0].group_name #=> String
10546
+ # resp.instances[0].groups[0].group_id #=> String
10547
+ # resp.instances[0].instance_id #=> String
10548
+ # resp.instances[0].tags #=> Array
10549
+ # resp.instances[0].tags[0].key #=> String
10550
+ # resp.instances[0].tags[0].value #=> String
10551
+ # resp.instances[0].vpc_id #=> String
10552
+ # resp.next_token #=> String
10553
+ #
10554
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClassicLinkInstances AWS API Documentation
10555
+ #
10556
+ # @overload describe_classic_link_instances(params = {})
10557
+ # @param [Hash] params ({})
10558
+ def describe_classic_link_instances(params = {}, options = {})
10559
+ req = build_request(:describe_classic_link_instances, params)
10560
+ req.send_request(options)
10561
+ end
10562
+
10563
+ # Describes the authorization rules for a specified Client VPN endpoint.
10564
+ #
10565
+ # @option params [required, String] :client_vpn_endpoint_id
10566
+ # The ID of the Client VPN endpoint.
10567
+ #
10568
+ # @option params [Boolean] :dry_run
10569
+ # Checks whether you have the required permissions for the action,
10570
+ # without actually making the request, and provides an error response.
10571
+ # If you have the required permissions, the error response is
10572
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10573
+ #
10574
+ # @option params [String] :next_token
10575
+ # The token to retrieve the next page of results.
10576
+ #
10577
+ # @option params [Array<Types::Filter>] :filters
10578
+ # One or more filters. Filter names and values are case-sensitive.
10579
+ #
10580
+ # @option params [Integer] :max_results
10581
+ # The maximum number of results to return for the request in a single
10582
+ # page. The remaining results can be seen by sending another request
10583
+ # with the nextToken value.
10584
+ #
10585
+ # @return [Types::DescribeClientVpnAuthorizationRulesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10586
+ #
10587
+ # * {Types::DescribeClientVpnAuthorizationRulesResult#authorization_rules #authorization_rules} => Array&lt;Types::AuthorizationRule&gt;
10588
+ # * {Types::DescribeClientVpnAuthorizationRulesResult#next_token #next_token} => String
10589
+ #
10590
+ # @example Request syntax with placeholder values
10591
+ #
10592
+ # resp = client.describe_client_vpn_authorization_rules({
10593
+ # client_vpn_endpoint_id: "String", # required
10594
+ # dry_run: false,
10595
+ # next_token: "NextToken",
10596
+ # filters: [
10597
+ # {
10598
+ # name: "String",
10599
+ # values: ["String"],
10600
+ # },
10601
+ # ],
10602
+ # max_results: 1,
10603
+ # })
10604
+ #
10605
+ # @example Response structure
10606
+ #
10607
+ # resp.authorization_rules #=> Array
10608
+ # resp.authorization_rules[0].client_vpn_endpoint_id #=> String
10609
+ # resp.authorization_rules[0].description #=> String
10610
+ # resp.authorization_rules[0].group_id #=> String
10611
+ # resp.authorization_rules[0].access_all #=> Boolean
10612
+ # resp.authorization_rules[0].destination_cidr #=> String
10613
+ # resp.authorization_rules[0].status.code #=> String, one of "authorizing", "active", "failed", "revoking"
10614
+ # resp.authorization_rules[0].status.message #=> String
10615
+ # resp.next_token #=> String
10616
+ #
10617
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnAuthorizationRules AWS API Documentation
10618
+ #
10619
+ # @overload describe_client_vpn_authorization_rules(params = {})
10620
+ # @param [Hash] params ({})
10621
+ def describe_client_vpn_authorization_rules(params = {}, options = {})
10622
+ req = build_request(:describe_client_vpn_authorization_rules, params)
10623
+ req.send_request(options)
10624
+ end
10625
+
10626
+ # Describes active client connections and connections that have been
10627
+ # terminated within the last 60 minutes for the specified Client VPN
10628
+ # endpoint.
10629
+ #
10630
+ # @option params [required, String] :client_vpn_endpoint_id
10631
+ # The ID of the Client VPN endpoint.
10632
+ #
10633
+ # @option params [Array<Types::Filter>] :filters
10634
+ # One or more filters. Filter names and values are case-sensitive.
10635
+ #
10636
+ # @option params [String] :next_token
10637
+ # The token to retrieve the next page of results.
10638
+ #
10639
+ # @option params [Integer] :max_results
10640
+ # The maximum number of results to return for the request in a single
10641
+ # page. The remaining results can be seen by sending another request
10642
+ # with the nextToken value.
10643
+ #
10644
+ # @option params [Boolean] :dry_run
10645
+ # Checks whether you have the required permissions for the action,
10646
+ # without actually making the request, and provides an error response.
10647
+ # If you have the required permissions, the error response is
10648
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10649
+ #
10650
+ # @return [Types::DescribeClientVpnConnectionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10651
+ #
10652
+ # * {Types::DescribeClientVpnConnectionsResult#connections #connections} => Array&lt;Types::ClientVpnConnection&gt;
10653
+ # * {Types::DescribeClientVpnConnectionsResult#next_token #next_token} => String
10654
+ #
10655
+ # @example Request syntax with placeholder values
10656
+ #
10657
+ # resp = client.describe_client_vpn_connections({
10658
+ # client_vpn_endpoint_id: "String", # required
10659
+ # filters: [
10660
+ # {
10661
+ # name: "String",
10662
+ # values: ["String"],
10663
+ # },
10664
+ # ],
10665
+ # next_token: "NextToken",
10666
+ # max_results: 1,
10667
+ # dry_run: false,
10668
+ # })
10669
+ #
10670
+ # @example Response structure
10671
+ #
10672
+ # resp.connections #=> Array
10673
+ # resp.connections[0].client_vpn_endpoint_id #=> String
10674
+ # resp.connections[0].timestamp #=> String
10675
+ # resp.connections[0].connection_id #=> String
10676
+ # resp.connections[0].username #=> String
10677
+ # resp.connections[0].connection_established_time #=> String
10678
+ # resp.connections[0].ingress_bytes #=> String
10679
+ # resp.connections[0].egress_bytes #=> String
10680
+ # resp.connections[0].ingress_packets #=> String
10681
+ # resp.connections[0].egress_packets #=> String
10682
+ # resp.connections[0].client_ip #=> String
10683
+ # resp.connections[0].common_name #=> String
10684
+ # resp.connections[0].status.code #=> String, one of "active", "failed-to-terminate", "terminating", "terminated"
10685
+ # resp.connections[0].status.message #=> String
10686
+ # resp.connections[0].connection_end_time #=> String
10687
+ # resp.next_token #=> String
10688
+ #
10689
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnConnections AWS API Documentation
10690
+ #
10691
+ # @overload describe_client_vpn_connections(params = {})
10692
+ # @param [Hash] params ({})
10693
+ def describe_client_vpn_connections(params = {}, options = {})
10694
+ req = build_request(:describe_client_vpn_connections, params)
10695
+ req.send_request(options)
10696
+ end
10697
+
10698
+ # Describes one or more Client VPN endpoints in the account.
10699
+ #
10700
+ # @option params [Array<String>] :client_vpn_endpoint_ids
10701
+ # The ID of the Client VPN endpoint.
10702
+ #
10703
+ # @option params [Integer] :max_results
10704
+ # The maximum number of results to return for the request in a single
10705
+ # page. The remaining results can be seen by sending another request
10706
+ # with the nextToken value.
10707
+ #
10708
+ # @option params [String] :next_token
10709
+ # The token to retrieve the next page of results.
10710
+ #
10711
+ # @option params [Array<Types::Filter>] :filters
10712
+ # One or more filters. Filter names and values are case-sensitive.
10713
+ #
10714
+ # @option params [Boolean] :dry_run
10715
+ # Checks whether you have the required permissions for the action,
10716
+ # without actually making the request, and provides an error response.
10717
+ # If you have the required permissions, the error response is
10718
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10719
+ #
10720
+ # @return [Types::DescribeClientVpnEndpointsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10721
+ #
10722
+ # * {Types::DescribeClientVpnEndpointsResult#client_vpn_endpoints #client_vpn_endpoints} => Array&lt;Types::ClientVpnEndpoint&gt;
10723
+ # * {Types::DescribeClientVpnEndpointsResult#next_token #next_token} => String
10724
+ #
10725
+ # @example Request syntax with placeholder values
10726
+ #
10727
+ # resp = client.describe_client_vpn_endpoints({
10728
+ # client_vpn_endpoint_ids: ["String"],
10729
+ # max_results: 1,
10730
+ # next_token: "NextToken",
10731
+ # filters: [
10732
+ # {
10733
+ # name: "String",
10734
+ # values: ["String"],
10735
+ # },
10736
+ # ],
10737
+ # dry_run: false,
10738
+ # })
10739
+ #
10740
+ # @example Response structure
10741
+ #
10742
+ # resp.client_vpn_endpoints #=> Array
10743
+ # resp.client_vpn_endpoints[0].client_vpn_endpoint_id #=> String
10744
+ # resp.client_vpn_endpoints[0].description #=> String
10745
+ # resp.client_vpn_endpoints[0].status.code #=> String, one of "pending-associate", "available", "deleting", "deleted"
10746
+ # resp.client_vpn_endpoints[0].status.message #=> String
10747
+ # resp.client_vpn_endpoints[0].creation_time #=> String
10748
+ # resp.client_vpn_endpoints[0].deletion_time #=> String
10749
+ # resp.client_vpn_endpoints[0].dns_name #=> String
10750
+ # resp.client_vpn_endpoints[0].client_cidr_block #=> String
10751
+ # resp.client_vpn_endpoints[0].split_tunnel #=> Boolean
10752
+ # resp.client_vpn_endpoints[0].vpn_protocol #=> String, one of "openvpn"
10753
+ # resp.client_vpn_endpoints[0].transport_protocol #=> String, one of "tcp", "udp"
10754
+ # resp.client_vpn_endpoints[0].associated_target_networks #=> Array
10755
+ # resp.client_vpn_endpoints[0].associated_target_networks[0].network_id #=> String
10756
+ # resp.client_vpn_endpoints[0].associated_target_networks[0].network_type #=> String, one of "vpc"
10757
+ # resp.client_vpn_endpoints[0].server_certificate_arn #=> String
10758
+ # resp.client_vpn_endpoints[0].authentication_options #=> Array
10759
+ # resp.client_vpn_endpoints[0].authentication_options[0].type #=> String, one of "certificate-authentication", "directory-service-authentication"
10760
+ # resp.client_vpn_endpoints[0].authentication_options[0].active_directory.directory_id #=> String
10761
+ # resp.client_vpn_endpoints[0].authentication_options[0].mutual_authentication.client_root_certificate_chain #=> String
10762
+ # resp.client_vpn_endpoints[0].connection_log_options.enabled #=> Boolean
10763
+ # resp.client_vpn_endpoints[0].connection_log_options.cloudwatch_log_group #=> String
10764
+ # resp.client_vpn_endpoints[0].connection_log_options.cloudwatch_log_stream #=> String
10765
+ # resp.next_token #=> String
10766
+ #
10767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnEndpoints AWS API Documentation
10768
+ #
10769
+ # @overload describe_client_vpn_endpoints(params = {})
10770
+ # @param [Hash] params ({})
10771
+ def describe_client_vpn_endpoints(params = {}, options = {})
10772
+ req = build_request(:describe_client_vpn_endpoints, params)
10773
+ req.send_request(options)
10774
+ end
10775
+
10776
+ # Describes the routes for the specified Client VPN endpoint.
10777
+ #
10778
+ # @option params [required, String] :client_vpn_endpoint_id
10779
+ # The ID of the Client VPN endpoint.
10780
+ #
10781
+ # @option params [Array<Types::Filter>] :filters
10782
+ # One or more filters. Filter names and values are case-sensitive.
10783
+ #
10784
+ # @option params [Integer] :max_results
10785
+ # The maximum number of results to return for the request in a single
10786
+ # page. The remaining results can be seen by sending another request
10787
+ # with the nextToken value.
10788
+ #
10789
+ # @option params [String] :next_token
10790
+ # The token to retrieve the next page of results.
10791
+ #
10792
+ # @option params [Boolean] :dry_run
10793
+ # Checks whether you have the required permissions for the action,
10794
+ # without actually making the request, and provides an error response.
10795
+ # If you have the required permissions, the error response is
10796
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10797
+ #
10798
+ # @return [Types::DescribeClientVpnRoutesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10799
+ #
10800
+ # * {Types::DescribeClientVpnRoutesResult#routes #routes} => Array&lt;Types::ClientVpnRoute&gt;
10801
+ # * {Types::DescribeClientVpnRoutesResult#next_token #next_token} => String
10802
+ #
10803
+ # @example Request syntax with placeholder values
10804
+ #
10805
+ # resp = client.describe_client_vpn_routes({
10806
+ # client_vpn_endpoint_id: "String", # required
10807
+ # filters: [
10808
+ # {
10809
+ # name: "String",
10810
+ # values: ["String"],
10811
+ # },
10812
+ # ],
10813
+ # max_results: 1,
10814
+ # next_token: "NextToken",
10815
+ # dry_run: false,
10816
+ # })
10817
+ #
10818
+ # @example Response structure
10064
10819
  #
10065
- # * `vpc-id` - The ID of the VPC to which the instance is linked.
10820
+ # resp.routes #=> Array
10821
+ # resp.routes[0].client_vpn_endpoint_id #=> String
10822
+ # resp.routes[0].destination_cidr #=> String
10823
+ # resp.routes[0].target_subnet #=> String
10824
+ # resp.routes[0].type #=> String
10825
+ # resp.routes[0].origin #=> String
10826
+ # resp.routes[0].status.code #=> String, one of "creating", "active", "failed", "deleting"
10827
+ # resp.routes[0].status.message #=> String
10828
+ # resp.routes[0].description #=> String
10829
+ # resp.next_token #=> String
10066
10830
  #
10067
- # `vpc-id` - The ID of the VPC that the instance is linked to.
10831
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnRoutes AWS API Documentation
10068
10832
  #
10069
- # @option params [Boolean] :dry_run
10070
- # Checks whether you have the required permissions for the action,
10071
- # without actually making the request, and provides an error response.
10072
- # If you have the required permissions, the error response is
10073
- # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10833
+ # @overload describe_client_vpn_routes(params = {})
10834
+ # @param [Hash] params ({})
10835
+ def describe_client_vpn_routes(params = {}, options = {})
10836
+ req = build_request(:describe_client_vpn_routes, params)
10837
+ req.send_request(options)
10838
+ end
10839
+
10840
+ # Describes the target networks associated with the specified Client VPN
10841
+ # endpoint.
10074
10842
  #
10075
- # @option params [Array<String>] :instance_ids
10076
- # One or more instance IDs. Must be instances linked to a VPC through
10077
- # ClassicLink.
10843
+ # @option params [required, String] :client_vpn_endpoint_id
10844
+ # The ID of the Client VPN endpoint.
10845
+ #
10846
+ # @option params [Array<String>] :association_ids
10847
+ # The IDs of the target network associations.
10078
10848
  #
10079
10849
  # @option params [Integer] :max_results
10080
10850
  # The maximum number of results to return for the request in a single
10081
- # page. The remaining results of the initial request can be seen by
10082
- # sending another request with the returned `NextToken` value. This
10083
- # value can be between 5 and 1000. If `MaxResults` is given a value
10084
- # larger than 1000, only 1000 results are returned. You cannot specify
10085
- # this parameter and the instance IDs parameter in the same request.
10086
- #
10087
- # Constraint: If the value is greater than 1000, we return only 1000
10088
- # items.
10851
+ # page. The remaining results can be seen by sending another request
10852
+ # with the nextToken value.
10089
10853
  #
10090
10854
  # @option params [String] :next_token
10091
10855
  # The token to retrieve the next page of results.
10092
10856
  #
10093
- # @return [Types::DescribeClassicLinkInstancesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10857
+ # @option params [Array<Types::Filter>] :filters
10858
+ # One or more filters. Filter names and values are case-sensitive.
10094
10859
  #
10095
- # * {Types::DescribeClassicLinkInstancesResult#instances #instances} => Array&lt;Types::ClassicLinkInstance&gt;
10096
- # * {Types::DescribeClassicLinkInstancesResult#next_token #next_token} => String
10860
+ # @option params [Boolean] :dry_run
10861
+ # Checks whether you have the required permissions for the action,
10862
+ # without actually making the request, and provides an error response.
10863
+ # If you have the required permissions, the error response is
10864
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
10865
+ #
10866
+ # @return [Types::DescribeClientVpnTargetNetworksResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10867
+ #
10868
+ # * {Types::DescribeClientVpnTargetNetworksResult#client_vpn_target_networks #client_vpn_target_networks} => Array&lt;Types::TargetNetwork&gt;
10869
+ # * {Types::DescribeClientVpnTargetNetworksResult#next_token #next_token} => String
10097
10870
  #
10098
10871
  # @example Request syntax with placeholder values
10099
10872
  #
10100
- # resp = client.describe_classic_link_instances({
10873
+ # resp = client.describe_client_vpn_target_networks({
10874
+ # client_vpn_endpoint_id: "String", # required
10875
+ # association_ids: ["String"],
10876
+ # max_results: 1,
10877
+ # next_token: "NextToken",
10101
10878
  # filters: [
10102
10879
  # {
10103
10880
  # name: "String",
@@ -10105,30 +10882,27 @@ module Aws::EC2
10105
10882
  # },
10106
10883
  # ],
10107
10884
  # dry_run: false,
10108
- # instance_ids: ["String"],
10109
- # max_results: 1,
10110
- # next_token: "String",
10111
10885
  # })
10112
10886
  #
10113
10887
  # @example Response structure
10114
10888
  #
10115
- # resp.instances #=> Array
10116
- # resp.instances[0].groups #=> Array
10117
- # resp.instances[0].groups[0].group_name #=> String
10118
- # resp.instances[0].groups[0].group_id #=> String
10119
- # resp.instances[0].instance_id #=> String
10120
- # resp.instances[0].tags #=> Array
10121
- # resp.instances[0].tags[0].key #=> String
10122
- # resp.instances[0].tags[0].value #=> String
10123
- # resp.instances[0].vpc_id #=> String
10889
+ # resp.client_vpn_target_networks #=> Array
10890
+ # resp.client_vpn_target_networks[0].association_id #=> String
10891
+ # resp.client_vpn_target_networks[0].vpc_id #=> String
10892
+ # resp.client_vpn_target_networks[0].target_network_id #=> String
10893
+ # resp.client_vpn_target_networks[0].client_vpn_endpoint_id #=> String
10894
+ # resp.client_vpn_target_networks[0].status.code #=> String, one of "associating", "associated", "association-failed", "disassociating", "disassociated"
10895
+ # resp.client_vpn_target_networks[0].status.message #=> String
10896
+ # resp.client_vpn_target_networks[0].security_groups #=> Array
10897
+ # resp.client_vpn_target_networks[0].security_groups[0] #=> String
10124
10898
  # resp.next_token #=> String
10125
10899
  #
10126
- # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClassicLinkInstances AWS API Documentation
10900
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnTargetNetworks AWS API Documentation
10127
10901
  #
10128
- # @overload describe_classic_link_instances(params = {})
10902
+ # @overload describe_client_vpn_target_networks(params = {})
10129
10903
  # @param [Hash] params ({})
10130
- def describe_classic_link_instances(params = {}, options = {})
10131
- req = build_request(:describe_classic_link_instances, params)
10904
+ def describe_client_vpn_target_networks(params = {}, options = {})
10905
+ req = build_request(:describe_client_vpn_target_networks, params)
10132
10906
  req.send_request(options)
10133
10907
  end
10134
10908
 
@@ -20327,6 +21101,59 @@ module Aws::EC2
20327
21101
  req.send_request(options)
20328
21102
  end
20329
21103
 
21104
+ # Disassociates a target network from the specified Client VPN endpoint.
21105
+ # When you disassociate the last target network from a Client VPN, the
21106
+ # following happens:
21107
+ #
21108
+ # * The route that was automatically added for the VPC is deleted
21109
+ #
21110
+ # * All active client connections are terminated
21111
+ #
21112
+ # * New client connections are disallowed
21113
+ #
21114
+ # * The Client VPN endpoint's status changes to `pending-associate`
21115
+ #
21116
+ # @option params [required, String] :client_vpn_endpoint_id
21117
+ # The ID of the Client VPN endpoint from which to disassociate the
21118
+ # target network.
21119
+ #
21120
+ # @option params [required, String] :association_id
21121
+ # The ID of the target network association.
21122
+ #
21123
+ # @option params [Boolean] :dry_run
21124
+ # Checks whether you have the required permissions for the action,
21125
+ # without actually making the request, and provides an error response.
21126
+ # If you have the required permissions, the error response is
21127
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
21128
+ #
21129
+ # @return [Types::DisassociateClientVpnTargetNetworkResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
21130
+ #
21131
+ # * {Types::DisassociateClientVpnTargetNetworkResult#association_id #association_id} => String
21132
+ # * {Types::DisassociateClientVpnTargetNetworkResult#status #status} => Types::AssociationStatus
21133
+ #
21134
+ # @example Request syntax with placeholder values
21135
+ #
21136
+ # resp = client.disassociate_client_vpn_target_network({
21137
+ # client_vpn_endpoint_id: "String", # required
21138
+ # association_id: "String", # required
21139
+ # dry_run: false,
21140
+ # })
21141
+ #
21142
+ # @example Response structure
21143
+ #
21144
+ # resp.association_id #=> String
21145
+ # resp.status.code #=> String, one of "associating", "associated", "association-failed", "disassociating", "disassociated"
21146
+ # resp.status.message #=> String
21147
+ #
21148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateClientVpnTargetNetwork AWS API Documentation
21149
+ #
21150
+ # @overload disassociate_client_vpn_target_network(params = {})
21151
+ # @param [Hash] params ({})
21152
+ def disassociate_client_vpn_target_network(params = {}, options = {})
21153
+ req = build_request(:disassociate_client_vpn_target_network, params)
21154
+ req.send_request(options)
21155
+ end
21156
+
20330
21157
  # Disassociates an IAM instance profile from a running or stopped
20331
21158
  # instance.
20332
21159
  #
@@ -20762,6 +21589,83 @@ module Aws::EC2
20762
21589
  req.send_request(options)
20763
21590
  end
20764
21591
 
21592
+ # Downloads the client certificate revocation list for the specified
21593
+ # Client VPN endpoint.
21594
+ #
21595
+ # @option params [required, String] :client_vpn_endpoint_id
21596
+ # The ID of the Client VPN endpoint.
21597
+ #
21598
+ # @option params [Boolean] :dry_run
21599
+ # Checks whether you have the required permissions for the action,
21600
+ # without actually making the request, and provides an error response.
21601
+ # If you have the required permissions, the error response is
21602
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
21603
+ #
21604
+ # @return [Types::ExportClientVpnClientCertificateRevocationListResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
21605
+ #
21606
+ # * {Types::ExportClientVpnClientCertificateRevocationListResult#certificate_revocation_list #certificate_revocation_list} => String
21607
+ # * {Types::ExportClientVpnClientCertificateRevocationListResult#status #status} => Types::ClientCertificateRevocationListStatus
21608
+ #
21609
+ # @example Request syntax with placeholder values
21610
+ #
21611
+ # resp = client.export_client_vpn_client_certificate_revocation_list({
21612
+ # client_vpn_endpoint_id: "String", # required
21613
+ # dry_run: false,
21614
+ # })
21615
+ #
21616
+ # @example Response structure
21617
+ #
21618
+ # resp.certificate_revocation_list #=> String
21619
+ # resp.status.code #=> String, one of "pending", "active"
21620
+ # resp.status.message #=> String
21621
+ #
21622
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportClientVpnClientCertificateRevocationList AWS API Documentation
21623
+ #
21624
+ # @overload export_client_vpn_client_certificate_revocation_list(params = {})
21625
+ # @param [Hash] params ({})
21626
+ def export_client_vpn_client_certificate_revocation_list(params = {}, options = {})
21627
+ req = build_request(:export_client_vpn_client_certificate_revocation_list, params)
21628
+ req.send_request(options)
21629
+ end
21630
+
21631
+ # Downloads the contents of the client configuration file for the
21632
+ # specified Client VPN endpoint. The client configuration file includes
21633
+ # the Client VPN endpoint and certificate information clients need to
21634
+ # establish a connection with the Client VPN endpoint.
21635
+ #
21636
+ # @option params [required, String] :client_vpn_endpoint_id
21637
+ # The ID of the Client VPN endpoint.
21638
+ #
21639
+ # @option params [Boolean] :dry_run
21640
+ # Checks whether you have the required permissions for the action,
21641
+ # without actually making the request, and provides an error response.
21642
+ # If you have the required permissions, the error response is
21643
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
21644
+ #
21645
+ # @return [Types::ExportClientVpnClientConfigurationResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
21646
+ #
21647
+ # * {Types::ExportClientVpnClientConfigurationResult#client_configuration #client_configuration} => String
21648
+ #
21649
+ # @example Request syntax with placeholder values
21650
+ #
21651
+ # resp = client.export_client_vpn_client_configuration({
21652
+ # client_vpn_endpoint_id: "String", # required
21653
+ # dry_run: false,
21654
+ # })
21655
+ #
21656
+ # @example Response structure
21657
+ #
21658
+ # resp.client_configuration #=> String
21659
+ #
21660
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportClientVpnClientConfiguration AWS API Documentation
21661
+ #
21662
+ # @overload export_client_vpn_client_configuration(params = {})
21663
+ # @param [Hash] params ({})
21664
+ def export_client_vpn_client_configuration(params = {}, options = {})
21665
+ req = build_request(:export_client_vpn_client_configuration, params)
21666
+ req.send_request(options)
21667
+ end
21668
+
20765
21669
  # Exports routes from the specified transit gateway route table to the
20766
21670
  # specified S3 bucket. By default, all routes are exported.
20767
21671
  # Alternatively, you can filter by CIDR range.
@@ -21518,6 +22422,54 @@ module Aws::EC2
21518
22422
  req.send_request(options)
21519
22423
  end
21520
22424
 
22425
+ # Uploads a client certificate revocation list to the specified Client
22426
+ # VPN endpoint. Uploading a client certificate revocation list
22427
+ # overwrites the existing client certificate revocation list.
22428
+ #
22429
+ # Uploading a client certificate revocation list resets existing client
22430
+ # connections.
22431
+ #
22432
+ # @option params [required, String] :client_vpn_endpoint_id
22433
+ # The ID of the Client VPN endpoint to which the client certificate
22434
+ # revocation list applies.
22435
+ #
22436
+ # @option params [required, String] :certificate_revocation_list
22437
+ # The client certificate revocation list file. For more information, see
22438
+ # [Generate a Client Certificate Revocation
22439
+ # List](vpn/latest/clientvpn-admin/cvpn-working-certificates.html#cvpn-working-certificates-generate)
22440
+ # in the *AWS Client VPN Admin Guide*.
22441
+ #
22442
+ # @option params [Boolean] :dry_run
22443
+ # Checks whether you have the required permissions for the action,
22444
+ # without actually making the request, and provides an error response.
22445
+ # If you have the required permissions, the error response is
22446
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
22447
+ #
22448
+ # @return [Types::ImportClientVpnClientCertificateRevocationListResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
22449
+ #
22450
+ # * {Types::ImportClientVpnClientCertificateRevocationListResult#return #return} => Boolean
22451
+ #
22452
+ # @example Request syntax with placeholder values
22453
+ #
22454
+ # resp = client.import_client_vpn_client_certificate_revocation_list({
22455
+ # client_vpn_endpoint_id: "String", # required
22456
+ # certificate_revocation_list: "String", # required
22457
+ # dry_run: false,
22458
+ # })
22459
+ #
22460
+ # @example Response structure
22461
+ #
22462
+ # resp.return #=> Boolean
22463
+ #
22464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportClientVpnClientCertificateRevocationList AWS API Documentation
22465
+ #
22466
+ # @overload import_client_vpn_client_certificate_revocation_list(params = {})
22467
+ # @param [Hash] params ({})
22468
+ def import_client_vpn_client_certificate_revocation_list(params = {}, options = {})
22469
+ req = build_request(:import_client_vpn_client_certificate_revocation_list, params)
22470
+ req.send_request(options)
22471
+ end
22472
+
21521
22473
  # Import single or multi-volume disk images or EBS snapshots into an
21522
22474
  # Amazon Machine Image (AMI). For more information, see [Importing a VM
21523
22475
  # as an Image Using VM Import/Export][1] in the *VM Import/Export User
@@ -22172,6 +23124,81 @@ module Aws::EC2
22172
23124
  req.send_request(options)
22173
23125
  end
22174
23126
 
23127
+ # Modifies the specified Client VPN endpoint. You can only modify an
23128
+ # endpoint's server certificate information, client connection logging
23129
+ # information, DNS server, and description. Modifying the DNS server
23130
+ # resets existing client connections.
23131
+ #
23132
+ # @option params [required, String] :client_vpn_endpoint_id
23133
+ # The ID of the Client VPN endpoint to modify.
23134
+ #
23135
+ # @option params [String] :server_certificate_arn
23136
+ # The ARN of the server certificate to be used. The server certificate
23137
+ # must be provisioned in AWS Certificate Manager (ACM).
23138
+ #
23139
+ # @option params [Types::ConnectionLogOptions] :connection_log_options
23140
+ # Information about the client connection logging options.
23141
+ #
23142
+ # If you enable client connection logging, data about client connections
23143
+ # is sent to a Cloudwatch Logs log stream. The following information is
23144
+ # logged:
23145
+ #
23146
+ # * Client connection requests
23147
+ #
23148
+ # * Client connection results (successful and unsuccessful)
23149
+ #
23150
+ # * Reasons for unsuccessful client connection requests
23151
+ #
23152
+ # * Client connection termination time
23153
+ #
23154
+ # @option params [Types::DnsServersOptionsModifyStructure] :dns_servers
23155
+ # Information about the DNS servers to be used by Client VPN
23156
+ # connections. A Client VPN endpoint can have up to two DNS servers.
23157
+ #
23158
+ # @option params [String] :description
23159
+ # A brief description of the Client VPN endpoint.
23160
+ #
23161
+ # @option params [Boolean] :dry_run
23162
+ # Checks whether you have the required permissions for the action,
23163
+ # without actually making the request, and provides an error response.
23164
+ # If you have the required permissions, the error response is
23165
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
23166
+ #
23167
+ # @return [Types::ModifyClientVpnEndpointResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
23168
+ #
23169
+ # * {Types::ModifyClientVpnEndpointResult#return #return} => Boolean
23170
+ #
23171
+ # @example Request syntax with placeholder values
23172
+ #
23173
+ # resp = client.modify_client_vpn_endpoint({
23174
+ # client_vpn_endpoint_id: "String", # required
23175
+ # server_certificate_arn: "String",
23176
+ # connection_log_options: {
23177
+ # enabled: false,
23178
+ # cloudwatch_log_group: "String",
23179
+ # cloudwatch_log_stream: "String",
23180
+ # },
23181
+ # dns_servers: {
23182
+ # custom_dns_servers: ["String"],
23183
+ # enabled: false,
23184
+ # },
23185
+ # description: "String",
23186
+ # dry_run: false,
23187
+ # })
23188
+ #
23189
+ # @example Response structure
23190
+ #
23191
+ # resp.return #=> Boolean
23192
+ #
23193
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyClientVpnEndpoint AWS API Documentation
23194
+ #
23195
+ # @overload modify_client_vpn_endpoint(params = {})
23196
+ # @param [Hash] params ({})
23197
+ def modify_client_vpn_endpoint(params = {}, options = {})
23198
+ req = build_request(:modify_client_vpn_endpoint, params)
23199
+ req.send_request(options)
23200
+ end
23201
+
22175
23202
  # Modifies the specified EC2 Fleet.
22176
23203
  #
22177
23204
  # While the EC2 Fleet is being modified, it is in the `modifying` state.
@@ -26013,16 +27040,16 @@ module Aws::EC2
26013
27040
  # instance_interruption_behavior: "hibernate", # accepts hibernate, stop, terminate
26014
27041
  # load_balancers_config: {
26015
27042
  # classic_load_balancers_config: {
26016
- # classic_load_balancers: [ # required
27043
+ # classic_load_balancers: [
26017
27044
  # {
26018
- # name: "String", # required
27045
+ # name: "String",
26019
27046
  # },
26020
27047
  # ],
26021
27048
  # },
26022
27049
  # target_groups_config: {
26023
- # target_groups: [ # required
27050
+ # target_groups: [
26024
27051
  # {
26025
- # arn: "String", # required
27052
+ # arn: "String",
26026
27053
  # },
26027
27054
  # ],
26028
27055
  # },
@@ -26669,6 +27696,56 @@ module Aws::EC2
26669
27696
  req.send_request(options)
26670
27697
  end
26671
27698
 
27699
+ # Removes an ingress authorization rule from a Client VPN endpoint.
27700
+ #
27701
+ # @option params [required, String] :client_vpn_endpoint_id
27702
+ # The ID of the Client VPN endpoint with which the authorization rule is
27703
+ # associated.
27704
+ #
27705
+ # @option params [required, String] :target_network_cidr
27706
+ # The IPv4 address range, in CIDR notation, of the network for which
27707
+ # access is being removed.
27708
+ #
27709
+ # @option params [String] :access_group_id
27710
+ # The ID of the Active Directory group for which to revoke access.
27711
+ #
27712
+ # @option params [Boolean] :revoke_all_groups
27713
+ # Indicates whether access should be revoked for all clients.
27714
+ #
27715
+ # @option params [Boolean] :dry_run
27716
+ # Checks whether you have the required permissions for the action,
27717
+ # without actually making the request, and provides an error response.
27718
+ # If you have the required permissions, the error response is
27719
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
27720
+ #
27721
+ # @return [Types::RevokeClientVpnIngressResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
27722
+ #
27723
+ # * {Types::RevokeClientVpnIngressResult#status #status} => Types::ClientVpnAuthorizationRuleStatus
27724
+ #
27725
+ # @example Request syntax with placeholder values
27726
+ #
27727
+ # resp = client.revoke_client_vpn_ingress({
27728
+ # client_vpn_endpoint_id: "String", # required
27729
+ # target_network_cidr: "String", # required
27730
+ # access_group_id: "String",
27731
+ # revoke_all_groups: false,
27732
+ # dry_run: false,
27733
+ # })
27734
+ #
27735
+ # @example Response structure
27736
+ #
27737
+ # resp.status.code #=> String, one of "authorizing", "active", "failed", "revoking"
27738
+ # resp.status.message #=> String
27739
+ #
27740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeClientVpnIngress AWS API Documentation
27741
+ #
27742
+ # @overload revoke_client_vpn_ingress(params = {})
27743
+ # @param [Hash] params ({})
27744
+ def revoke_client_vpn_ingress(params = {}, options = {})
27745
+ req = build_request(:revoke_client_vpn_ingress, params)
27746
+ req.send_request(options)
27747
+ end
27748
+
26672
27749
  # \[EC2-VPC only\] Removes one or more egress rules from a security
26673
27750
  # group for EC2-VPC. This action doesn't apply to security groups for
26674
27751
  # use in EC2-Classic. To remove a rule, the values that you specify (for
@@ -28069,6 +29146,62 @@ module Aws::EC2
28069
29146
  req.send_request(options)
28070
29147
  end
28071
29148
 
29149
+ # Terminates active Client VPN endpoint connections. This action can be
29150
+ # used to terminate a specific client connection, or up to five
29151
+ # connections established by a specific user.
29152
+ #
29153
+ # @option params [required, String] :client_vpn_endpoint_id
29154
+ # The ID of the Client VPN endpoint to which the client is connected.
29155
+ #
29156
+ # @option params [String] :connection_id
29157
+ # The ID of the client connection to be terminated.
29158
+ #
29159
+ # @option params [String] :username
29160
+ # The name of the user who initiated the connection. Use this option to
29161
+ # terminate all active connections for the specified user. This option
29162
+ # can only be used if the user has established up to five connections.
29163
+ #
29164
+ # @option params [Boolean] :dry_run
29165
+ # Checks whether you have the required permissions for the action,
29166
+ # without actually making the request, and provides an error response.
29167
+ # If you have the required permissions, the error response is
29168
+ # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
29169
+ #
29170
+ # @return [Types::TerminateClientVpnConnectionsResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
29171
+ #
29172
+ # * {Types::TerminateClientVpnConnectionsResult#client_vpn_endpoint_id #client_vpn_endpoint_id} => String
29173
+ # * {Types::TerminateClientVpnConnectionsResult#username #username} => String
29174
+ # * {Types::TerminateClientVpnConnectionsResult#connection_statuses #connection_statuses} => Array&lt;Types::TerminateConnectionStatus&gt;
29175
+ #
29176
+ # @example Request syntax with placeholder values
29177
+ #
29178
+ # resp = client.terminate_client_vpn_connections({
29179
+ # client_vpn_endpoint_id: "String", # required
29180
+ # connection_id: "String",
29181
+ # username: "String",
29182
+ # dry_run: false,
29183
+ # })
29184
+ #
29185
+ # @example Response structure
29186
+ #
29187
+ # resp.client_vpn_endpoint_id #=> String
29188
+ # resp.username #=> String
29189
+ # resp.connection_statuses #=> Array
29190
+ # resp.connection_statuses[0].connection_id #=> String
29191
+ # resp.connection_statuses[0].previous_status.code #=> String, one of "active", "failed-to-terminate", "terminating", "terminated"
29192
+ # resp.connection_statuses[0].previous_status.message #=> String
29193
+ # resp.connection_statuses[0].current_status.code #=> String, one of "active", "failed-to-terminate", "terminating", "terminated"
29194
+ # resp.connection_statuses[0].current_status.message #=> String
29195
+ #
29196
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TerminateClientVpnConnections AWS API Documentation
29197
+ #
29198
+ # @overload terminate_client_vpn_connections(params = {})
29199
+ # @param [Hash] params ({})
29200
+ def terminate_client_vpn_connections(params = {}, options = {})
29201
+ req = build_request(:terminate_client_vpn_connections, params)
29202
+ req.send_request(options)
29203
+ end
29204
+
28072
29205
  # Shuts down one or more instances. This operation is idempotent; if you
28073
29206
  # terminate an instance more than once, each call succeeds.
28074
29207
  #
@@ -28577,7 +29710,7 @@ module Aws::EC2
28577
29710
  params: params,
28578
29711
  config: config)
28579
29712
  context[:gem_name] = 'aws-sdk-ec2'
28580
- context[:gem_version] = '1.63.0'
29713
+ context[:gem_version] = '1.64.0'
28581
29714
  Seahorse::Client::Request.new(handlers, context)
28582
29715
  end
28583
29716