aws-sdk-ec2 1.63.0 → 1.64.0

Sign up to get free protection for your applications and to get access to all the features.
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