aws-sdk-pcaconnectorad 1.0.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.
@@ -0,0 +1,2261 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/request_compression.rb'
32
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
33
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
34
+ require 'aws-sdk-core/plugins/sign.rb'
35
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
36
+
37
+ Aws::Plugins::GlobalConfiguration.add_identifier(:pcaconnectorad)
38
+
39
+ module Aws::PcaConnectorAd
40
+ # An API client for PcaConnectorAd. To construct a client, you need to configure a `:region` and `:credentials`.
41
+ #
42
+ # client = Aws::PcaConnectorAd::Client.new(
43
+ # region: region_name,
44
+ # credentials: credentials,
45
+ # # ...
46
+ # )
47
+ #
48
+ # For details on configuring region and credentials see
49
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
50
+ #
51
+ # See {#initialize} for a full list of supported configuration options.
52
+ class Client < Seahorse::Client::Base
53
+
54
+ include Aws::ClientStubs
55
+
56
+ @identifier = :pcaconnectorad
57
+
58
+ set_api(ClientApi::API)
59
+
60
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
61
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
62
+ add_plugin(Aws::Plugins::Logging)
63
+ add_plugin(Aws::Plugins::ParamConverter)
64
+ add_plugin(Aws::Plugins::ParamValidator)
65
+ add_plugin(Aws::Plugins::UserAgent)
66
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
67
+ add_plugin(Aws::Plugins::RetryErrors)
68
+ add_plugin(Aws::Plugins::GlobalConfiguration)
69
+ add_plugin(Aws::Plugins::RegionalEndpoint)
70
+ add_plugin(Aws::Plugins::EndpointDiscovery)
71
+ add_plugin(Aws::Plugins::EndpointPattern)
72
+ add_plugin(Aws::Plugins::ResponsePaging)
73
+ add_plugin(Aws::Plugins::StubResponses)
74
+ add_plugin(Aws::Plugins::IdempotencyToken)
75
+ add_plugin(Aws::Plugins::JsonvalueConverter)
76
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
77
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
78
+ add_plugin(Aws::Plugins::TransferEncoding)
79
+ add_plugin(Aws::Plugins::HttpChecksum)
80
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
81
+ add_plugin(Aws::Plugins::RequestCompression)
82
+ add_plugin(Aws::Plugins::DefaultsMode)
83
+ add_plugin(Aws::Plugins::RecursionDetection)
84
+ add_plugin(Aws::Plugins::Sign)
85
+ add_plugin(Aws::Plugins::Protocols::RestJson)
86
+ add_plugin(Aws::PcaConnectorAd::Plugins::Endpoints)
87
+
88
+ # @overload initialize(options)
89
+ # @param [Hash] options
90
+ # @option options [required, Aws::CredentialProvider] :credentials
91
+ # Your AWS credentials. This can be an instance of any one of the
92
+ # following classes:
93
+ #
94
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
95
+ # credentials.
96
+ #
97
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
98
+ # shared file, such as `~/.aws/config`.
99
+ #
100
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
101
+ #
102
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
103
+ # assume a role after providing credentials via the web.
104
+ #
105
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
106
+ # access token generated from `aws login`.
107
+ #
108
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
109
+ # process that outputs to stdout.
110
+ #
111
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
112
+ # from an EC2 IMDS on an EC2 instance.
113
+ #
114
+ # * `Aws::ECSCredentials` - Used for loading credentials from
115
+ # instances running in ECS.
116
+ #
117
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
118
+ # from the Cognito Identity service.
119
+ #
120
+ # When `:credentials` are not configured directly, the following
121
+ # locations will be searched for credentials:
122
+ #
123
+ # * `Aws.config[:credentials]`
124
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
125
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
126
+ # * `~/.aws/credentials`
127
+ # * `~/.aws/config`
128
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
129
+ # are very aggressive. Construct and pass an instance of
130
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
131
+ # enable retries and extended timeouts. Instance profile credential
132
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
133
+ # to true.
134
+ #
135
+ # @option options [required, String] :region
136
+ # The AWS region to connect to. The configured `:region` is
137
+ # used to determine the service `:endpoint`. When not passed,
138
+ # a default `:region` is searched for in the following locations:
139
+ #
140
+ # * `Aws.config[:region]`
141
+ # * `ENV['AWS_REGION']`
142
+ # * `ENV['AMAZON_REGION']`
143
+ # * `ENV['AWS_DEFAULT_REGION']`
144
+ # * `~/.aws/credentials`
145
+ # * `~/.aws/config`
146
+ #
147
+ # @option options [String] :access_key_id
148
+ #
149
+ # @option options [Boolean] :active_endpoint_cache (false)
150
+ # When set to `true`, a thread polling for endpoints will be running in
151
+ # the background every 60 secs (default). Defaults to `false`.
152
+ #
153
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
154
+ # Used only in `adaptive` retry mode. When true, the request will sleep
155
+ # until there is sufficent client side capacity to retry the request.
156
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
157
+ # not retry instead of sleeping.
158
+ #
159
+ # @option options [Boolean] :client_side_monitoring (false)
160
+ # When `true`, client-side metrics will be collected for all API requests from
161
+ # this client.
162
+ #
163
+ # @option options [String] :client_side_monitoring_client_id ("")
164
+ # Allows you to provide an identifier for this client which will be attached to
165
+ # all generated client side metrics. Defaults to an empty string.
166
+ #
167
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
168
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
169
+ # side monitoring agent is running on, where client metrics will be published via UDP.
170
+ #
171
+ # @option options [Integer] :client_side_monitoring_port (31000)
172
+ # Required for publishing client metrics. The port that the client side monitoring
173
+ # agent is running on, where client metrics will be published via UDP.
174
+ #
175
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
176
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
177
+ # will use the Client Side Monitoring Agent Publisher.
178
+ #
179
+ # @option options [Boolean] :convert_params (true)
180
+ # When `true`, an attempt is made to coerce request parameters into
181
+ # the required types.
182
+ #
183
+ # @option options [Boolean] :correct_clock_skew (true)
184
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
185
+ # a clock skew correction and retry requests with skewed client clocks.
186
+ #
187
+ # @option options [String] :defaults_mode ("legacy")
188
+ # See {Aws::DefaultsModeConfiguration} for a list of the
189
+ # accepted modes and the configuration defaults that are included.
190
+ #
191
+ # @option options [Boolean] :disable_host_prefix_injection (false)
192
+ # Set to true to disable SDK automatically adding host prefix
193
+ # to default service endpoint when available.
194
+ #
195
+ # @option options [Boolean] :disable_request_compression (false)
196
+ # When set to 'true' the request body will not be compressed
197
+ # for supported operations.
198
+ #
199
+ # @option options [String] :endpoint
200
+ # The client endpoint is normally constructed from the `:region`
201
+ # option. You should only configure an `:endpoint` when connecting
202
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
203
+ #
204
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
205
+ # Used for the maximum size limit of the LRU cache storing endpoints data
206
+ # for endpoint discovery enabled operations. Defaults to 1000.
207
+ #
208
+ # @option options [Integer] :endpoint_cache_max_threads (10)
209
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
210
+ #
211
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
212
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
213
+ # Use this option to config the time interval in seconds for making
214
+ # requests fetching endpoints information. Defaults to 60 sec.
215
+ #
216
+ # @option options [Boolean] :endpoint_discovery (false)
217
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
218
+ #
219
+ # @option options [Boolean] :ignore_configured_endpoint_urls
220
+ # Setting to true disables use of endpoint URLs provided via environment
221
+ # variables and the shared configuration file.
222
+ #
223
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
224
+ # The log formatter.
225
+ #
226
+ # @option options [Symbol] :log_level (:info)
227
+ # The log level to send messages to the `:logger` at.
228
+ #
229
+ # @option options [Logger] :logger
230
+ # The Logger instance to send log messages to. If this option
231
+ # is not set, logging will be disabled.
232
+ #
233
+ # @option options [Integer] :max_attempts (3)
234
+ # An integer representing the maximum number attempts that will be made for
235
+ # a single request, including the initial attempt. For example,
236
+ # setting this value to 5 will result in a request being retried up to
237
+ # 4 times. Used in `standard` and `adaptive` retry modes.
238
+ #
239
+ # @option options [String] :profile ("default")
240
+ # Used when loading credentials from the shared credentials file
241
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
242
+ #
243
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
244
+ # The minimum size in bytes that triggers compression for request
245
+ # bodies. The value must be non-negative integer value between 0
246
+ # and 10485780 bytes inclusive.
247
+ #
248
+ # @option options [Proc] :retry_backoff
249
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
250
+ # This option is only used in the `legacy` retry mode.
251
+ #
252
+ # @option options [Float] :retry_base_delay (0.3)
253
+ # The base delay in seconds used by the default backoff function. This option
254
+ # is only used in the `legacy` retry mode.
255
+ #
256
+ # @option options [Symbol] :retry_jitter (:none)
257
+ # A delay randomiser function used by the default backoff function.
258
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
259
+ # otherwise a Proc that takes and returns a number. This option is only used
260
+ # in the `legacy` retry mode.
261
+ #
262
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
263
+ #
264
+ # @option options [Integer] :retry_limit (3)
265
+ # The maximum number of times to retry failed requests. Only
266
+ # ~ 500 level server errors and certain ~ 400 level client errors
267
+ # are retried. Generally, these are throttling errors, data
268
+ # checksum errors, networking errors, timeout errors, auth errors,
269
+ # endpoint discovery, and errors from expired credentials.
270
+ # This option is only used in the `legacy` retry mode.
271
+ #
272
+ # @option options [Integer] :retry_max_delay (0)
273
+ # The maximum number of seconds to delay between retries (0 for no limit)
274
+ # used by the default backoff function. This option is only used in the
275
+ # `legacy` retry mode.
276
+ #
277
+ # @option options [String] :retry_mode ("legacy")
278
+ # Specifies which retry algorithm to use. Values are:
279
+ #
280
+ # * `legacy` - The pre-existing retry behavior. This is default value if
281
+ # no retry mode is provided.
282
+ #
283
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
284
+ # This includes support for retry quotas, which limit the number of
285
+ # unsuccessful retries a client can make.
286
+ #
287
+ # * `adaptive` - An experimental retry mode that includes all the
288
+ # functionality of `standard` mode along with automatic client side
289
+ # throttling. This is a provisional mode that may change behavior
290
+ # in the future.
291
+ #
292
+ #
293
+ # @option options [String] :sdk_ua_app_id
294
+ # A unique and opaque application ID that is appended to the
295
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
296
+ # maximum length of 50.
297
+ #
298
+ # @option options [String] :secret_access_key
299
+ #
300
+ # @option options [String] :session_token
301
+ #
302
+ # @option options [Boolean] :stub_responses (false)
303
+ # Causes the client to return stubbed responses. By default
304
+ # fake responses are generated and returned. You can specify
305
+ # the response data to return or errors to raise by calling
306
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
307
+ #
308
+ # ** Please note ** When response stubbing is enabled, no HTTP
309
+ # requests are made, and retries are disabled.
310
+ #
311
+ # @option options [Aws::TokenProvider] :token_provider
312
+ # A Bearer Token Provider. This can be an instance of any one of the
313
+ # following classes:
314
+ #
315
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
316
+ # tokens.
317
+ #
318
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
319
+ # access token generated from `aws login`.
320
+ #
321
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
322
+ # will be used to search for tokens configured for your profile in shared configuration files.
323
+ #
324
+ # @option options [Boolean] :use_dualstack_endpoint
325
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
326
+ # will be used if available.
327
+ #
328
+ # @option options [Boolean] :use_fips_endpoint
329
+ # When set to `true`, fips compatible endpoints will be used if available.
330
+ # When a `fips` region is used, the region is normalized and this config
331
+ # is set to `true`.
332
+ #
333
+ # @option options [Boolean] :validate_params (true)
334
+ # When `true`, request parameters are validated before
335
+ # sending the request.
336
+ #
337
+ # @option options [Aws::PcaConnectorAd::EndpointProvider] :endpoint_provider
338
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::PcaConnectorAd::EndpointParameters`
339
+ #
340
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
341
+ # requests through. Formatted like 'http://proxy.com:123'.
342
+ #
343
+ # @option options [Float] :http_open_timeout (15) The number of
344
+ # seconds to wait when opening a HTTP session before raising a
345
+ # `Timeout::Error`.
346
+ #
347
+ # @option options [Float] :http_read_timeout (60) The default
348
+ # number of seconds to wait for response data. This value can
349
+ # safely be set per-request on the session.
350
+ #
351
+ # @option options [Float] :http_idle_timeout (5) The number of
352
+ # seconds a connection is allowed to sit idle before it is
353
+ # considered stale. Stale connections are closed and removed
354
+ # from the pool before making a request.
355
+ #
356
+ # @option options [Float] :http_continue_timeout (1) The number of
357
+ # seconds to wait for a 100-continue response before sending the
358
+ # request body. This option has no effect unless the request has
359
+ # "Expect" header set to "100-continue". Defaults to `nil` which
360
+ # disables this behaviour. This value can safely be set per
361
+ # request on the session.
362
+ #
363
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
364
+ # in seconds.
365
+ #
366
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
367
+ # HTTP debug output will be sent to the `:logger`.
368
+ #
369
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
370
+ # SSL peer certificates are verified when establishing a
371
+ # connection.
372
+ #
373
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
374
+ # certificate authority bundle file that should be used when
375
+ # verifying peer certificates. If you do not pass
376
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
377
+ # will be used if available.
378
+ #
379
+ # @option options [String] :ssl_ca_directory Full path of the
380
+ # directory that contains the unbundled SSL certificate
381
+ # authority files for verifying peer certificates. If you do
382
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
383
+ # system default will be used if available.
384
+ #
385
+ def initialize(*args)
386
+ super
387
+ end
388
+
389
+ # @!group API Operations
390
+
391
+ # Creates a connector between Amazon Web Services Private CA and an
392
+ # Active Directory. You must specify the private CA, directory ID, and
393
+ # security groups.
394
+ #
395
+ # @option params [required, String] :certificate_authority_arn
396
+ # The Amazon Resource Name (ARN) of the certificate authority being
397
+ # used.
398
+ #
399
+ # @option params [String] :client_token
400
+ # Idempotency token.
401
+ #
402
+ # **A suitable default value is auto-generated.** You should normally
403
+ # not need to pass this option.**
404
+ #
405
+ # @option params [required, String] :directory_id
406
+ # The identifier of the Active Directory.
407
+ #
408
+ # @option params [Hash<String,String>] :tags
409
+ # Metadata assigned to a connector consisting of a key-value pair.
410
+ #
411
+ # @option params [required, Types::VpcInformation] :vpc_information
412
+ # Security group IDs that describe the inbound and outbound rules.
413
+ #
414
+ # @return [Types::CreateConnectorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
415
+ #
416
+ # * {Types::CreateConnectorResponse#connector_arn #connector_arn} => String
417
+ #
418
+ # @example Request syntax with placeholder values
419
+ #
420
+ # resp = client.create_connector({
421
+ # certificate_authority_arn: "CertificateAuthorityArn", # required
422
+ # client_token: "ClientToken",
423
+ # directory_id: "DirectoryId", # required
424
+ # tags: {
425
+ # "String" => "String",
426
+ # },
427
+ # vpc_information: { # required
428
+ # security_group_ids: ["SecurityGroupId"], # required
429
+ # },
430
+ # })
431
+ #
432
+ # @example Response structure
433
+ #
434
+ # resp.connector_arn #=> String
435
+ #
436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/CreateConnector AWS API Documentation
437
+ #
438
+ # @overload create_connector(params = {})
439
+ # @param [Hash] params ({})
440
+ def create_connector(params = {}, options = {})
441
+ req = build_request(:create_connector, params)
442
+ req.send_request(options)
443
+ end
444
+
445
+ # Creates a directory registration that authorizes communication between
446
+ # Amazon Web Services Private CA and an Active Directory
447
+ #
448
+ # @option params [String] :client_token
449
+ # Idempotency token.
450
+ #
451
+ # **A suitable default value is auto-generated.** You should normally
452
+ # not need to pass this option.**
453
+ #
454
+ # @option params [required, String] :directory_id
455
+ # The identifier of the Active Directory.
456
+ #
457
+ # @option params [Hash<String,String>] :tags
458
+ # Metadata assigned to a directory registration consisting of a
459
+ # key-value pair.
460
+ #
461
+ # @return [Types::CreateDirectoryRegistrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
462
+ #
463
+ # * {Types::CreateDirectoryRegistrationResponse#directory_registration_arn #directory_registration_arn} => String
464
+ #
465
+ # @example Request syntax with placeholder values
466
+ #
467
+ # resp = client.create_directory_registration({
468
+ # client_token: "ClientToken",
469
+ # directory_id: "DirectoryId", # required
470
+ # tags: {
471
+ # "String" => "String",
472
+ # },
473
+ # })
474
+ #
475
+ # @example Response structure
476
+ #
477
+ # resp.directory_registration_arn #=> String
478
+ #
479
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/CreateDirectoryRegistration AWS API Documentation
480
+ #
481
+ # @overload create_directory_registration(params = {})
482
+ # @param [Hash] params ({})
483
+ def create_directory_registration(params = {}, options = {})
484
+ req = build_request(:create_directory_registration, params)
485
+ req.send_request(options)
486
+ end
487
+
488
+ # Creates a service principal name (SPN) for the service account in
489
+ # Active Directory. Kerberos authentication uses SPNs to associate a
490
+ # service instance with a service sign-in account.
491
+ #
492
+ # @option params [String] :client_token
493
+ # Idempotency token.
494
+ #
495
+ # **A suitable default value is auto-generated.** You should normally
496
+ # not need to pass this option.**
497
+ #
498
+ # @option params [required, String] :connector_arn
499
+ # The Amazon Resource Name (ARN) that was returned when you called
500
+ # [CreateConnector][1].
501
+ #
502
+ #
503
+ #
504
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html
505
+ #
506
+ # @option params [required, String] :directory_registration_arn
507
+ # The Amazon Resource Name (ARN) that was returned when you called
508
+ # [CreateDirectoryRegistration][1].
509
+ #
510
+ #
511
+ #
512
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html
513
+ #
514
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
515
+ #
516
+ # @example Request syntax with placeholder values
517
+ #
518
+ # resp = client.create_service_principal_name({
519
+ # client_token: "ClientToken",
520
+ # connector_arn: "ConnectorArn", # required
521
+ # directory_registration_arn: "DirectoryRegistrationArn", # required
522
+ # })
523
+ #
524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/CreateServicePrincipalName AWS API Documentation
525
+ #
526
+ # @overload create_service_principal_name(params = {})
527
+ # @param [Hash] params ({})
528
+ def create_service_principal_name(params = {}, options = {})
529
+ req = build_request(:create_service_principal_name, params)
530
+ req.send_request(options)
531
+ end
532
+
533
+ # Creates an Active Directory compatible certificate template. The
534
+ # connectors issues certificates using these templates based on the
535
+ # requester’s Active Directory group membership.
536
+ #
537
+ # @option params [String] :client_token
538
+ # Idempotency token.
539
+ #
540
+ # **A suitable default value is auto-generated.** You should normally
541
+ # not need to pass this option.**
542
+ #
543
+ # @option params [required, String] :connector_arn
544
+ # The Amazon Resource Name (ARN) that was returned when you called
545
+ # [CreateConnector][1].
546
+ #
547
+ #
548
+ #
549
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html
550
+ #
551
+ # @option params [required, Types::TemplateDefinition] :definition
552
+ # Template configuration to define the information included in
553
+ # certificates. Define certificate validity and renewal periods,
554
+ # certificate request handling and enrollment options, key usage
555
+ # extensions, application policies, and cryptography settings.
556
+ #
557
+ # @option params [required, String] :name
558
+ # Name of the template. The template name must be unique.
559
+ #
560
+ # @option params [Hash<String,String>] :tags
561
+ # Metadata assigned to a template consisting of a key-value pair.
562
+ #
563
+ # @return [Types::CreateTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
564
+ #
565
+ # * {Types::CreateTemplateResponse#template_arn #template_arn} => String
566
+ #
567
+ # @example Request syntax with placeholder values
568
+ #
569
+ # resp = client.create_template({
570
+ # client_token: "ClientToken",
571
+ # connector_arn: "ConnectorArn", # required
572
+ # definition: { # required
573
+ # template_v2: {
574
+ # certificate_validity: { # required
575
+ # renewal_period: { # required
576
+ # period: 1, # required
577
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
578
+ # },
579
+ # validity_period: { # required
580
+ # period: 1, # required
581
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
582
+ # },
583
+ # },
584
+ # enrollment_flags: { # required
585
+ # enable_key_reuse_on_nt_token_keyset_storage_full: false,
586
+ # include_symmetric_algorithms: false,
587
+ # no_security_extension: false,
588
+ # remove_invalid_certificate_from_personal_store: false,
589
+ # user_interaction_required: false,
590
+ # },
591
+ # extensions: { # required
592
+ # application_policies: {
593
+ # critical: false,
594
+ # policies: [ # required
595
+ # {
596
+ # policy_object_identifier: "CustomObjectIdentifier",
597
+ # policy_type: "ALL_APPLICATION_POLICIES", # accepts ALL_APPLICATION_POLICIES, ANY_PURPOSE, ATTESTATION_IDENTITY_KEY_CERTIFICATE, CERTIFICATE_REQUEST_AGENT, CLIENT_AUTHENTICATION, CODE_SIGNING, CTL_USAGE, DIGITAL_RIGHTS, DIRECTORY_SERVICE_EMAIL_REPLICATION, DISALLOWED_LIST, DNS_SERVER_TRUST, DOCUMENT_ENCRYPTION, DOCUMENT_SIGNING, DYNAMIC_CODE_GENERATOR, EARLY_LAUNCH_ANTIMALWARE_DRIVER, EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, ENCLAVE, ENCRYPTING_FILE_SYSTEM, ENDORSEMENT_KEY_CERTIFICATE, FILE_RECOVERY, HAL_EXTENSION, IP_SECURITY_END_SYSTEM, IP_SECURITY_IKE_INTERMEDIATE, IP_SECURITY_TUNNEL_TERMINATION, IP_SECURITY_USER, ISOLATED_USER_MODE, KDC_AUTHENTICATION, KERNEL_MODE_CODE_SIGNING, KEY_PACK_LICENSES, KEY_RECOVERY, KEY_RECOVERY_AGENT, LICENSE_SERVER_VERIFICATION, LIFETIME_SIGNING, MICROSOFT_PUBLISHER, MICROSOFT_TIME_STAMPING, MICROSOFT_TRUST_LIST_SIGNING, OCSP_SIGNING, OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, PLATFORM_CERTIFICATE, PREVIEW_BUILD_SIGNING, PRIVATE_KEY_ARCHIVAL, PROTECTED_PROCESS_LIGHT_VERIFICATION, PROTECTED_PROCESS_VERIFICATION, QUALIFIED_SUBORDINATION, REVOKED_LIST_SIGNER, ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION, ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION, ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL, ROOT_LIST_SIGNER, SECURE_EMAIL, SERVER_AUTHENTICATION, SMART_CARD_LOGIN, SPC_ENCRYPTED_DIGEST_RETRY_COUNT, SPC_RELAXED_PE_MARKER_CHECK, TIME_STAMPING, WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_VERIFICATION, WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION, WINDOWS_KITS_COMPONENT, WINDOWS_RT_VERIFICATION, WINDOWS_SOFTWARE_EXTENSION_VERIFICATION, WINDOWS_STORE, WINDOWS_SYSTEM_COMPONENT_VERIFICATION, WINDOWS_TCB_COMPONENT, WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT, WINDOWS_UPDATE
598
+ # },
599
+ # ],
600
+ # },
601
+ # key_usage: { # required
602
+ # critical: false,
603
+ # usage_flags: { # required
604
+ # data_encipherment: false,
605
+ # digital_signature: false,
606
+ # key_agreement: false,
607
+ # key_encipherment: false,
608
+ # non_repudiation: false,
609
+ # },
610
+ # },
611
+ # },
612
+ # general_flags: { # required
613
+ # auto_enrollment: false,
614
+ # machine_type: false,
615
+ # },
616
+ # private_key_attributes: { # required
617
+ # crypto_providers: ["CryptoProvidersListMemberString"],
618
+ # key_spec: "KEY_EXCHANGE", # required, accepts KEY_EXCHANGE, SIGNATURE
619
+ # minimal_key_length: 1, # required
620
+ # },
621
+ # private_key_flags: { # required
622
+ # client_version: "WINDOWS_SERVER_2003", # required, accepts WINDOWS_SERVER_2003, WINDOWS_SERVER_2008, WINDOWS_SERVER_2008_R2, WINDOWS_SERVER_2012, WINDOWS_SERVER_2012_R2, WINDOWS_SERVER_2016
623
+ # exportable_key: false,
624
+ # strong_key_protection_required: false,
625
+ # },
626
+ # subject_name_flags: { # required
627
+ # require_common_name: false,
628
+ # require_directory_path: false,
629
+ # require_dns_as_cn: false,
630
+ # require_email: false,
631
+ # san_require_directory_guid: false,
632
+ # san_require_dns: false,
633
+ # san_require_domain_dns: false,
634
+ # san_require_email: false,
635
+ # san_require_spn: false,
636
+ # san_require_upn: false,
637
+ # },
638
+ # superseded_templates: ["TemplateName"],
639
+ # },
640
+ # template_v3: {
641
+ # certificate_validity: { # required
642
+ # renewal_period: { # required
643
+ # period: 1, # required
644
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
645
+ # },
646
+ # validity_period: { # required
647
+ # period: 1, # required
648
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
649
+ # },
650
+ # },
651
+ # enrollment_flags: { # required
652
+ # enable_key_reuse_on_nt_token_keyset_storage_full: false,
653
+ # include_symmetric_algorithms: false,
654
+ # no_security_extension: false,
655
+ # remove_invalid_certificate_from_personal_store: false,
656
+ # user_interaction_required: false,
657
+ # },
658
+ # extensions: { # required
659
+ # application_policies: {
660
+ # critical: false,
661
+ # policies: [ # required
662
+ # {
663
+ # policy_object_identifier: "CustomObjectIdentifier",
664
+ # policy_type: "ALL_APPLICATION_POLICIES", # accepts ALL_APPLICATION_POLICIES, ANY_PURPOSE, ATTESTATION_IDENTITY_KEY_CERTIFICATE, CERTIFICATE_REQUEST_AGENT, CLIENT_AUTHENTICATION, CODE_SIGNING, CTL_USAGE, DIGITAL_RIGHTS, DIRECTORY_SERVICE_EMAIL_REPLICATION, DISALLOWED_LIST, DNS_SERVER_TRUST, DOCUMENT_ENCRYPTION, DOCUMENT_SIGNING, DYNAMIC_CODE_GENERATOR, EARLY_LAUNCH_ANTIMALWARE_DRIVER, EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, ENCLAVE, ENCRYPTING_FILE_SYSTEM, ENDORSEMENT_KEY_CERTIFICATE, FILE_RECOVERY, HAL_EXTENSION, IP_SECURITY_END_SYSTEM, IP_SECURITY_IKE_INTERMEDIATE, IP_SECURITY_TUNNEL_TERMINATION, IP_SECURITY_USER, ISOLATED_USER_MODE, KDC_AUTHENTICATION, KERNEL_MODE_CODE_SIGNING, KEY_PACK_LICENSES, KEY_RECOVERY, KEY_RECOVERY_AGENT, LICENSE_SERVER_VERIFICATION, LIFETIME_SIGNING, MICROSOFT_PUBLISHER, MICROSOFT_TIME_STAMPING, MICROSOFT_TRUST_LIST_SIGNING, OCSP_SIGNING, OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, PLATFORM_CERTIFICATE, PREVIEW_BUILD_SIGNING, PRIVATE_KEY_ARCHIVAL, PROTECTED_PROCESS_LIGHT_VERIFICATION, PROTECTED_PROCESS_VERIFICATION, QUALIFIED_SUBORDINATION, REVOKED_LIST_SIGNER, ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION, ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION, ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL, ROOT_LIST_SIGNER, SECURE_EMAIL, SERVER_AUTHENTICATION, SMART_CARD_LOGIN, SPC_ENCRYPTED_DIGEST_RETRY_COUNT, SPC_RELAXED_PE_MARKER_CHECK, TIME_STAMPING, WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_VERIFICATION, WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION, WINDOWS_KITS_COMPONENT, WINDOWS_RT_VERIFICATION, WINDOWS_SOFTWARE_EXTENSION_VERIFICATION, WINDOWS_STORE, WINDOWS_SYSTEM_COMPONENT_VERIFICATION, WINDOWS_TCB_COMPONENT, WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT, WINDOWS_UPDATE
665
+ # },
666
+ # ],
667
+ # },
668
+ # key_usage: { # required
669
+ # critical: false,
670
+ # usage_flags: { # required
671
+ # data_encipherment: false,
672
+ # digital_signature: false,
673
+ # key_agreement: false,
674
+ # key_encipherment: false,
675
+ # non_repudiation: false,
676
+ # },
677
+ # },
678
+ # },
679
+ # general_flags: { # required
680
+ # auto_enrollment: false,
681
+ # machine_type: false,
682
+ # },
683
+ # hash_algorithm: "SHA256", # required, accepts SHA256, SHA384, SHA512
684
+ # private_key_attributes: { # required
685
+ # algorithm: "RSA", # required, accepts RSA, ECDH_P256, ECDH_P384, ECDH_P521
686
+ # crypto_providers: ["CryptoProvidersListMemberString"],
687
+ # key_spec: "KEY_EXCHANGE", # required, accepts KEY_EXCHANGE, SIGNATURE
688
+ # key_usage_property: { # required
689
+ # property_flags: {
690
+ # decrypt: false,
691
+ # key_agreement: false,
692
+ # sign: false,
693
+ # },
694
+ # property_type: "ALL", # accepts ALL
695
+ # },
696
+ # minimal_key_length: 1, # required
697
+ # },
698
+ # private_key_flags: { # required
699
+ # client_version: "WINDOWS_SERVER_2008", # required, accepts WINDOWS_SERVER_2008, WINDOWS_SERVER_2008_R2, WINDOWS_SERVER_2012, WINDOWS_SERVER_2012_R2, WINDOWS_SERVER_2016
700
+ # exportable_key: false,
701
+ # require_alternate_signature_algorithm: false,
702
+ # strong_key_protection_required: false,
703
+ # },
704
+ # subject_name_flags: { # required
705
+ # require_common_name: false,
706
+ # require_directory_path: false,
707
+ # require_dns_as_cn: false,
708
+ # require_email: false,
709
+ # san_require_directory_guid: false,
710
+ # san_require_dns: false,
711
+ # san_require_domain_dns: false,
712
+ # san_require_email: false,
713
+ # san_require_spn: false,
714
+ # san_require_upn: false,
715
+ # },
716
+ # superseded_templates: ["TemplateName"],
717
+ # },
718
+ # template_v4: {
719
+ # certificate_validity: { # required
720
+ # renewal_period: { # required
721
+ # period: 1, # required
722
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
723
+ # },
724
+ # validity_period: { # required
725
+ # period: 1, # required
726
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
727
+ # },
728
+ # },
729
+ # enrollment_flags: { # required
730
+ # enable_key_reuse_on_nt_token_keyset_storage_full: false,
731
+ # include_symmetric_algorithms: false,
732
+ # no_security_extension: false,
733
+ # remove_invalid_certificate_from_personal_store: false,
734
+ # user_interaction_required: false,
735
+ # },
736
+ # extensions: { # required
737
+ # application_policies: {
738
+ # critical: false,
739
+ # policies: [ # required
740
+ # {
741
+ # policy_object_identifier: "CustomObjectIdentifier",
742
+ # policy_type: "ALL_APPLICATION_POLICIES", # accepts ALL_APPLICATION_POLICIES, ANY_PURPOSE, ATTESTATION_IDENTITY_KEY_CERTIFICATE, CERTIFICATE_REQUEST_AGENT, CLIENT_AUTHENTICATION, CODE_SIGNING, CTL_USAGE, DIGITAL_RIGHTS, DIRECTORY_SERVICE_EMAIL_REPLICATION, DISALLOWED_LIST, DNS_SERVER_TRUST, DOCUMENT_ENCRYPTION, DOCUMENT_SIGNING, DYNAMIC_CODE_GENERATOR, EARLY_LAUNCH_ANTIMALWARE_DRIVER, EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, ENCLAVE, ENCRYPTING_FILE_SYSTEM, ENDORSEMENT_KEY_CERTIFICATE, FILE_RECOVERY, HAL_EXTENSION, IP_SECURITY_END_SYSTEM, IP_SECURITY_IKE_INTERMEDIATE, IP_SECURITY_TUNNEL_TERMINATION, IP_SECURITY_USER, ISOLATED_USER_MODE, KDC_AUTHENTICATION, KERNEL_MODE_CODE_SIGNING, KEY_PACK_LICENSES, KEY_RECOVERY, KEY_RECOVERY_AGENT, LICENSE_SERVER_VERIFICATION, LIFETIME_SIGNING, MICROSOFT_PUBLISHER, MICROSOFT_TIME_STAMPING, MICROSOFT_TRUST_LIST_SIGNING, OCSP_SIGNING, OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, PLATFORM_CERTIFICATE, PREVIEW_BUILD_SIGNING, PRIVATE_KEY_ARCHIVAL, PROTECTED_PROCESS_LIGHT_VERIFICATION, PROTECTED_PROCESS_VERIFICATION, QUALIFIED_SUBORDINATION, REVOKED_LIST_SIGNER, ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION, ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION, ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL, ROOT_LIST_SIGNER, SECURE_EMAIL, SERVER_AUTHENTICATION, SMART_CARD_LOGIN, SPC_ENCRYPTED_DIGEST_RETRY_COUNT, SPC_RELAXED_PE_MARKER_CHECK, TIME_STAMPING, WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_VERIFICATION, WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION, WINDOWS_KITS_COMPONENT, WINDOWS_RT_VERIFICATION, WINDOWS_SOFTWARE_EXTENSION_VERIFICATION, WINDOWS_STORE, WINDOWS_SYSTEM_COMPONENT_VERIFICATION, WINDOWS_TCB_COMPONENT, WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT, WINDOWS_UPDATE
743
+ # },
744
+ # ],
745
+ # },
746
+ # key_usage: { # required
747
+ # critical: false,
748
+ # usage_flags: { # required
749
+ # data_encipherment: false,
750
+ # digital_signature: false,
751
+ # key_agreement: false,
752
+ # key_encipherment: false,
753
+ # non_repudiation: false,
754
+ # },
755
+ # },
756
+ # },
757
+ # general_flags: { # required
758
+ # auto_enrollment: false,
759
+ # machine_type: false,
760
+ # },
761
+ # hash_algorithm: "SHA256", # accepts SHA256, SHA384, SHA512
762
+ # private_key_attributes: { # required
763
+ # algorithm: "RSA", # accepts RSA, ECDH_P256, ECDH_P384, ECDH_P521
764
+ # crypto_providers: ["CryptoProvidersListMemberString"],
765
+ # key_spec: "KEY_EXCHANGE", # required, accepts KEY_EXCHANGE, SIGNATURE
766
+ # key_usage_property: {
767
+ # property_flags: {
768
+ # decrypt: false,
769
+ # key_agreement: false,
770
+ # sign: false,
771
+ # },
772
+ # property_type: "ALL", # accepts ALL
773
+ # },
774
+ # minimal_key_length: 1, # required
775
+ # },
776
+ # private_key_flags: { # required
777
+ # client_version: "WINDOWS_SERVER_2012", # required, accepts WINDOWS_SERVER_2012, WINDOWS_SERVER_2012_R2, WINDOWS_SERVER_2016
778
+ # exportable_key: false,
779
+ # require_alternate_signature_algorithm: false,
780
+ # require_same_key_renewal: false,
781
+ # strong_key_protection_required: false,
782
+ # use_legacy_provider: false,
783
+ # },
784
+ # subject_name_flags: { # required
785
+ # require_common_name: false,
786
+ # require_directory_path: false,
787
+ # require_dns_as_cn: false,
788
+ # require_email: false,
789
+ # san_require_directory_guid: false,
790
+ # san_require_dns: false,
791
+ # san_require_domain_dns: false,
792
+ # san_require_email: false,
793
+ # san_require_spn: false,
794
+ # san_require_upn: false,
795
+ # },
796
+ # superseded_templates: ["TemplateName"],
797
+ # },
798
+ # },
799
+ # name: "TemplateName", # required
800
+ # tags: {
801
+ # "String" => "String",
802
+ # },
803
+ # })
804
+ #
805
+ # @example Response structure
806
+ #
807
+ # resp.template_arn #=> String
808
+ #
809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/CreateTemplate AWS API Documentation
810
+ #
811
+ # @overload create_template(params = {})
812
+ # @param [Hash] params ({})
813
+ def create_template(params = {}, options = {})
814
+ req = build_request(:create_template, params)
815
+ req.send_request(options)
816
+ end
817
+
818
+ # Create a group access control entry. Allow or deny Active Directory
819
+ # groups from enrolling and/or autoenrolling with the template based on
820
+ # the group security identifiers (SIDs).
821
+ #
822
+ # @option params [required, Types::AccessRights] :access_rights
823
+ # Allow or deny permissions for an Active Directory group to enroll or
824
+ # autoenroll certificates for a template.
825
+ #
826
+ # @option params [String] :client_token
827
+ # Idempotency token.
828
+ #
829
+ # **A suitable default value is auto-generated.** You should normally
830
+ # not need to pass this option.**
831
+ #
832
+ # @option params [required, String] :group_display_name
833
+ # Name of the Active Directory group. This name does not need to match
834
+ # the group name in Active Directory.
835
+ #
836
+ # @option params [required, String] :group_security_identifier
837
+ # Security identifier (SID) of the group object from Active Directory.
838
+ # The SID starts with "S-".
839
+ #
840
+ # @option params [required, String] :template_arn
841
+ # The Amazon Resource Name (ARN) that was returned when you called
842
+ # [CreateTemplate][1].
843
+ #
844
+ #
845
+ #
846
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html
847
+ #
848
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
849
+ #
850
+ # @example Request syntax with placeholder values
851
+ #
852
+ # resp = client.create_template_group_access_control_entry({
853
+ # access_rights: { # required
854
+ # auto_enroll: "ALLOW", # accepts ALLOW, DENY
855
+ # enroll: "ALLOW", # accepts ALLOW, DENY
856
+ # },
857
+ # client_token: "ClientToken",
858
+ # group_display_name: "DisplayName", # required
859
+ # group_security_identifier: "GroupSecurityIdentifier", # required
860
+ # template_arn: "TemplateArn", # required
861
+ # })
862
+ #
863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/CreateTemplateGroupAccessControlEntry AWS API Documentation
864
+ #
865
+ # @overload create_template_group_access_control_entry(params = {})
866
+ # @param [Hash] params ({})
867
+ def create_template_group_access_control_entry(params = {}, options = {})
868
+ req = build_request(:create_template_group_access_control_entry, params)
869
+ req.send_request(options)
870
+ end
871
+
872
+ # Deletes a connector for Active Directory. You must provide the Amazon
873
+ # Resource Name (ARN) of the connector that you want to delete. You can
874
+ # find the ARN by calling the
875
+ # [https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API\_ListConnectors][1]
876
+ # action. Deleting a connector does not deregister your directory with
877
+ # Amazon Web Services Private CA. You can deregister your directory by
878
+ # calling the
879
+ # [https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API\_DeleteDirectoryRegistration][2]
880
+ # action.
881
+ #
882
+ #
883
+ #
884
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_ListConnectors
885
+ # [2]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_DeleteDirectoryRegistration
886
+ #
887
+ # @option params [required, String] :connector_arn
888
+ # The Amazon Resource Name (ARN) that was returned when you called
889
+ # [CreateConnector][1].
890
+ #
891
+ #
892
+ #
893
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html
894
+ #
895
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
896
+ #
897
+ # @example Request syntax with placeholder values
898
+ #
899
+ # resp = client.delete_connector({
900
+ # connector_arn: "ConnectorArn", # required
901
+ # })
902
+ #
903
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/DeleteConnector AWS API Documentation
904
+ #
905
+ # @overload delete_connector(params = {})
906
+ # @param [Hash] params ({})
907
+ def delete_connector(params = {}, options = {})
908
+ req = build_request(:delete_connector, params)
909
+ req.send_request(options)
910
+ end
911
+
912
+ # Deletes a directory registration. Deleting a directory registration
913
+ # deauthorizes Amazon Web Services Private CA with the directory.
914
+ #
915
+ # @option params [required, String] :directory_registration_arn
916
+ # The Amazon Resource Name (ARN) that was returned when you called
917
+ # [CreateDirectoryRegistration][1].
918
+ #
919
+ #
920
+ #
921
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html
922
+ #
923
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
924
+ #
925
+ # @example Request syntax with placeholder values
926
+ #
927
+ # resp = client.delete_directory_registration({
928
+ # directory_registration_arn: "DirectoryRegistrationArn", # required
929
+ # })
930
+ #
931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/DeleteDirectoryRegistration AWS API Documentation
932
+ #
933
+ # @overload delete_directory_registration(params = {})
934
+ # @param [Hash] params ({})
935
+ def delete_directory_registration(params = {}, options = {})
936
+ req = build_request(:delete_directory_registration, params)
937
+ req.send_request(options)
938
+ end
939
+
940
+ # Deletes the service principal name (SPN) used by a connector to
941
+ # authenticate with your Active Directory.
942
+ #
943
+ # @option params [required, String] :connector_arn
944
+ # The Amazon Resource Name (ARN) that was returned when you called
945
+ # [CreateConnector][1].
946
+ #
947
+ #
948
+ #
949
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html
950
+ #
951
+ # @option params [required, String] :directory_registration_arn
952
+ # The Amazon Resource Name (ARN) that was returned when you called
953
+ # [CreateDirectoryRegistration][1].
954
+ #
955
+ #
956
+ #
957
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html
958
+ #
959
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
960
+ #
961
+ # @example Request syntax with placeholder values
962
+ #
963
+ # resp = client.delete_service_principal_name({
964
+ # connector_arn: "ConnectorArn", # required
965
+ # directory_registration_arn: "DirectoryRegistrationArn", # required
966
+ # })
967
+ #
968
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/DeleteServicePrincipalName AWS API Documentation
969
+ #
970
+ # @overload delete_service_principal_name(params = {})
971
+ # @param [Hash] params ({})
972
+ def delete_service_principal_name(params = {}, options = {})
973
+ req = build_request(:delete_service_principal_name, params)
974
+ req.send_request(options)
975
+ end
976
+
977
+ # Deletes a template. Certificates issued using the template are still
978
+ # valid until they are revoked or expired.
979
+ #
980
+ # @option params [required, String] :template_arn
981
+ # The Amazon Resource Name (ARN) that was returned when you called
982
+ # [CreateTemplate][1].
983
+ #
984
+ #
985
+ #
986
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html
987
+ #
988
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
989
+ #
990
+ # @example Request syntax with placeholder values
991
+ #
992
+ # resp = client.delete_template({
993
+ # template_arn: "TemplateArn", # required
994
+ # })
995
+ #
996
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/DeleteTemplate AWS API Documentation
997
+ #
998
+ # @overload delete_template(params = {})
999
+ # @param [Hash] params ({})
1000
+ def delete_template(params = {}, options = {})
1001
+ req = build_request(:delete_template, params)
1002
+ req.send_request(options)
1003
+ end
1004
+
1005
+ # Deletes a group access control entry.
1006
+ #
1007
+ # @option params [required, String] :group_security_identifier
1008
+ # Security identifier (SID) of the group object from Active Directory.
1009
+ # The SID starts with "S-".
1010
+ #
1011
+ # @option params [required, String] :template_arn
1012
+ # The Amazon Resource Name (ARN) that was returned when you called
1013
+ # [CreateTemplate][1].
1014
+ #
1015
+ #
1016
+ #
1017
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html
1018
+ #
1019
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1020
+ #
1021
+ # @example Request syntax with placeholder values
1022
+ #
1023
+ # resp = client.delete_template_group_access_control_entry({
1024
+ # group_security_identifier: "GroupSecurityIdentifier", # required
1025
+ # template_arn: "TemplateArn", # required
1026
+ # })
1027
+ #
1028
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/DeleteTemplateGroupAccessControlEntry AWS API Documentation
1029
+ #
1030
+ # @overload delete_template_group_access_control_entry(params = {})
1031
+ # @param [Hash] params ({})
1032
+ def delete_template_group_access_control_entry(params = {}, options = {})
1033
+ req = build_request(:delete_template_group_access_control_entry, params)
1034
+ req.send_request(options)
1035
+ end
1036
+
1037
+ # Lists information about your connector. You specify the connector on
1038
+ # input by its ARN (Amazon Resource Name).
1039
+ #
1040
+ # @option params [required, String] :connector_arn
1041
+ # The Amazon Resource Name (ARN) that was returned when you called
1042
+ # [CreateConnector][1].
1043
+ #
1044
+ #
1045
+ #
1046
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html
1047
+ #
1048
+ # @return [Types::GetConnectorResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1049
+ #
1050
+ # * {Types::GetConnectorResponse#connector #connector} => Types::Connector
1051
+ #
1052
+ # @example Request syntax with placeholder values
1053
+ #
1054
+ # resp = client.get_connector({
1055
+ # connector_arn: "ConnectorArn", # required
1056
+ # })
1057
+ #
1058
+ # @example Response structure
1059
+ #
1060
+ # resp.connector.arn #=> String
1061
+ # resp.connector.certificate_authority_arn #=> String
1062
+ # resp.connector.certificate_enrollment_policy_server_endpoint #=> String
1063
+ # resp.connector.created_at #=> Time
1064
+ # resp.connector.directory_id #=> String
1065
+ # resp.connector.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
1066
+ # resp.connector.status_reason #=> String, one of "DIRECTORY_ACCESS_DENIED", "INTERNAL_FAILURE", "PRIVATECA_ACCESS_DENIED", "PRIVATECA_RESOURCE_NOT_FOUND", "SECURITY_GROUP_NOT_IN_VPC", "VPC_ACCESS_DENIED", "VPC_ENDPOINT_LIMIT_EXCEEDED", "VPC_RESOURCE_NOT_FOUND"
1067
+ # resp.connector.updated_at #=> Time
1068
+ # resp.connector.vpc_information.security_group_ids #=> Array
1069
+ # resp.connector.vpc_information.security_group_ids[0] #=> String
1070
+ #
1071
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/GetConnector AWS API Documentation
1072
+ #
1073
+ # @overload get_connector(params = {})
1074
+ # @param [Hash] params ({})
1075
+ def get_connector(params = {}, options = {})
1076
+ req = build_request(:get_connector, params)
1077
+ req.send_request(options)
1078
+ end
1079
+
1080
+ # A structure that contains information about your directory
1081
+ # registration.
1082
+ #
1083
+ # @option params [required, String] :directory_registration_arn
1084
+ # The Amazon Resource Name (ARN) that was returned when you called
1085
+ # [CreateDirectoryRegistration][1].
1086
+ #
1087
+ #
1088
+ #
1089
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html
1090
+ #
1091
+ # @return [Types::GetDirectoryRegistrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1092
+ #
1093
+ # * {Types::GetDirectoryRegistrationResponse#directory_registration #directory_registration} => Types::DirectoryRegistration
1094
+ #
1095
+ # @example Request syntax with placeholder values
1096
+ #
1097
+ # resp = client.get_directory_registration({
1098
+ # directory_registration_arn: "DirectoryRegistrationArn", # required
1099
+ # })
1100
+ #
1101
+ # @example Response structure
1102
+ #
1103
+ # resp.directory_registration.arn #=> String
1104
+ # resp.directory_registration.created_at #=> Time
1105
+ # resp.directory_registration.directory_id #=> String
1106
+ # resp.directory_registration.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
1107
+ # resp.directory_registration.status_reason #=> String, one of "DIRECTORY_ACCESS_DENIED", "DIRECTORY_RESOURCE_NOT_FOUND", "DIRECTORY_NOT_ACTIVE", "DIRECTORY_NOT_REACHABLE", "DIRECTORY_TYPE_NOT_SUPPORTED", "INTERNAL_FAILURE"
1108
+ # resp.directory_registration.updated_at #=> Time
1109
+ #
1110
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/GetDirectoryRegistration AWS API Documentation
1111
+ #
1112
+ # @overload get_directory_registration(params = {})
1113
+ # @param [Hash] params ({})
1114
+ def get_directory_registration(params = {}, options = {})
1115
+ req = build_request(:get_directory_registration, params)
1116
+ req.send_request(options)
1117
+ end
1118
+
1119
+ # Lists the service principal name that the connector uses to
1120
+ # authenticate with Active Directory.
1121
+ #
1122
+ # @option params [required, String] :connector_arn
1123
+ # The Amazon Resource Name (ARN) that was returned when you called
1124
+ # [CreateConnector][1].
1125
+ #
1126
+ #
1127
+ #
1128
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html
1129
+ #
1130
+ # @option params [required, String] :directory_registration_arn
1131
+ # The Amazon Resource Name (ARN) that was returned when you called
1132
+ # [CreateDirectoryRegistration][1].
1133
+ #
1134
+ #
1135
+ #
1136
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html
1137
+ #
1138
+ # @return [Types::GetServicePrincipalNameResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1139
+ #
1140
+ # * {Types::GetServicePrincipalNameResponse#service_principal_name #service_principal_name} => Types::ServicePrincipalName
1141
+ #
1142
+ # @example Request syntax with placeholder values
1143
+ #
1144
+ # resp = client.get_service_principal_name({
1145
+ # connector_arn: "ConnectorArn", # required
1146
+ # directory_registration_arn: "DirectoryRegistrationArn", # required
1147
+ # })
1148
+ #
1149
+ # @example Response structure
1150
+ #
1151
+ # resp.service_principal_name.connector_arn #=> String
1152
+ # resp.service_principal_name.created_at #=> Time
1153
+ # resp.service_principal_name.directory_registration_arn #=> String
1154
+ # resp.service_principal_name.status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
1155
+ # resp.service_principal_name.status_reason #=> String, one of "DIRECTORY_ACCESS_DENIED", "DIRECTORY_NOT_REACHABLE", "DIRECTORY_RESOURCE_NOT_FOUND", "SPN_EXISTS_ON_DIFFERENT_AD_OBJECT", "INTERNAL_FAILURE"
1156
+ # resp.service_principal_name.updated_at #=> Time
1157
+ #
1158
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/GetServicePrincipalName AWS API Documentation
1159
+ #
1160
+ # @overload get_service_principal_name(params = {})
1161
+ # @param [Hash] params ({})
1162
+ def get_service_principal_name(params = {}, options = {})
1163
+ req = build_request(:get_service_principal_name, params)
1164
+ req.send_request(options)
1165
+ end
1166
+
1167
+ # Retrieves a certificate template that the connector uses to issue
1168
+ # certificates from a private CA.
1169
+ #
1170
+ # @option params [required, String] :template_arn
1171
+ # The Amazon Resource Name (ARN) that was returned when you called
1172
+ # [CreateTemplate][1].
1173
+ #
1174
+ #
1175
+ #
1176
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html
1177
+ #
1178
+ # @return [Types::GetTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1179
+ #
1180
+ # * {Types::GetTemplateResponse#template #template} => Types::Template
1181
+ #
1182
+ # @example Request syntax with placeholder values
1183
+ #
1184
+ # resp = client.get_template({
1185
+ # template_arn: "TemplateArn", # required
1186
+ # })
1187
+ #
1188
+ # @example Response structure
1189
+ #
1190
+ # resp.template.arn #=> String
1191
+ # resp.template.connector_arn #=> String
1192
+ # resp.template.created_at #=> Time
1193
+ # resp.template.definition.template_v2.certificate_validity.renewal_period.period #=> Integer
1194
+ # resp.template.definition.template_v2.certificate_validity.renewal_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1195
+ # resp.template.definition.template_v2.certificate_validity.validity_period.period #=> Integer
1196
+ # resp.template.definition.template_v2.certificate_validity.validity_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1197
+ # resp.template.definition.template_v2.enrollment_flags.enable_key_reuse_on_nt_token_keyset_storage_full #=> Boolean
1198
+ # resp.template.definition.template_v2.enrollment_flags.include_symmetric_algorithms #=> Boolean
1199
+ # resp.template.definition.template_v2.enrollment_flags.no_security_extension #=> Boolean
1200
+ # resp.template.definition.template_v2.enrollment_flags.remove_invalid_certificate_from_personal_store #=> Boolean
1201
+ # resp.template.definition.template_v2.enrollment_flags.user_interaction_required #=> Boolean
1202
+ # resp.template.definition.template_v2.extensions.application_policies.critical #=> Boolean
1203
+ # resp.template.definition.template_v2.extensions.application_policies.policies #=> Array
1204
+ # resp.template.definition.template_v2.extensions.application_policies.policies[0].policy_object_identifier #=> String
1205
+ # resp.template.definition.template_v2.extensions.application_policies.policies[0].policy_type #=> String, one of "ALL_APPLICATION_POLICIES", "ANY_PURPOSE", "ATTESTATION_IDENTITY_KEY_CERTIFICATE", "CERTIFICATE_REQUEST_AGENT", "CLIENT_AUTHENTICATION", "CODE_SIGNING", "CTL_USAGE", "DIGITAL_RIGHTS", "DIRECTORY_SERVICE_EMAIL_REPLICATION", "DISALLOWED_LIST", "DNS_SERVER_TRUST", "DOCUMENT_ENCRYPTION", "DOCUMENT_SIGNING", "DYNAMIC_CODE_GENERATOR", "EARLY_LAUNCH_ANTIMALWARE_DRIVER", "EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "ENCLAVE", "ENCRYPTING_FILE_SYSTEM", "ENDORSEMENT_KEY_CERTIFICATE", "FILE_RECOVERY", "HAL_EXTENSION", "IP_SECURITY_END_SYSTEM", "IP_SECURITY_IKE_INTERMEDIATE", "IP_SECURITY_TUNNEL_TERMINATION", "IP_SECURITY_USER", "ISOLATED_USER_MODE", "KDC_AUTHENTICATION", "KERNEL_MODE_CODE_SIGNING", "KEY_PACK_LICENSES", "KEY_RECOVERY", "KEY_RECOVERY_AGENT", "LICENSE_SERVER_VERIFICATION", "LIFETIME_SIGNING", "MICROSOFT_PUBLISHER", "MICROSOFT_TIME_STAMPING", "MICROSOFT_TRUST_LIST_SIGNING", "OCSP_SIGNING", "OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "PLATFORM_CERTIFICATE", "PREVIEW_BUILD_SIGNING", "PRIVATE_KEY_ARCHIVAL", "PROTECTED_PROCESS_LIGHT_VERIFICATION", "PROTECTED_PROCESS_VERIFICATION", "QUALIFIED_SUBORDINATION", "REVOKED_LIST_SIGNER", "ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION", "ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION", "ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL", "ROOT_LIST_SIGNER", "SECURE_EMAIL", "SERVER_AUTHENTICATION", "SMART_CARD_LOGIN", "SPC_ENCRYPTED_DIGEST_RETRY_COUNT", "SPC_RELAXED_PE_MARKER_CHECK", "TIME_STAMPING", "WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_VERIFICATION", "WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION", "WINDOWS_KITS_COMPONENT", "WINDOWS_RT_VERIFICATION", "WINDOWS_SOFTWARE_EXTENSION_VERIFICATION", "WINDOWS_STORE", "WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "WINDOWS_TCB_COMPONENT", "WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT", "WINDOWS_UPDATE"
1206
+ # resp.template.definition.template_v2.extensions.key_usage.critical #=> Boolean
1207
+ # resp.template.definition.template_v2.extensions.key_usage.usage_flags.data_encipherment #=> Boolean
1208
+ # resp.template.definition.template_v2.extensions.key_usage.usage_flags.digital_signature #=> Boolean
1209
+ # resp.template.definition.template_v2.extensions.key_usage.usage_flags.key_agreement #=> Boolean
1210
+ # resp.template.definition.template_v2.extensions.key_usage.usage_flags.key_encipherment #=> Boolean
1211
+ # resp.template.definition.template_v2.extensions.key_usage.usage_flags.non_repudiation #=> Boolean
1212
+ # resp.template.definition.template_v2.general_flags.auto_enrollment #=> Boolean
1213
+ # resp.template.definition.template_v2.general_flags.machine_type #=> Boolean
1214
+ # resp.template.definition.template_v2.private_key_attributes.crypto_providers #=> Array
1215
+ # resp.template.definition.template_v2.private_key_attributes.crypto_providers[0] #=> String
1216
+ # resp.template.definition.template_v2.private_key_attributes.key_spec #=> String, one of "KEY_EXCHANGE", "SIGNATURE"
1217
+ # resp.template.definition.template_v2.private_key_attributes.minimal_key_length #=> Integer
1218
+ # resp.template.definition.template_v2.private_key_flags.client_version #=> String, one of "WINDOWS_SERVER_2003", "WINDOWS_SERVER_2008", "WINDOWS_SERVER_2008_R2", "WINDOWS_SERVER_2012", "WINDOWS_SERVER_2012_R2", "WINDOWS_SERVER_2016"
1219
+ # resp.template.definition.template_v2.private_key_flags.exportable_key #=> Boolean
1220
+ # resp.template.definition.template_v2.private_key_flags.strong_key_protection_required #=> Boolean
1221
+ # resp.template.definition.template_v2.subject_name_flags.require_common_name #=> Boolean
1222
+ # resp.template.definition.template_v2.subject_name_flags.require_directory_path #=> Boolean
1223
+ # resp.template.definition.template_v2.subject_name_flags.require_dns_as_cn #=> Boolean
1224
+ # resp.template.definition.template_v2.subject_name_flags.require_email #=> Boolean
1225
+ # resp.template.definition.template_v2.subject_name_flags.san_require_directory_guid #=> Boolean
1226
+ # resp.template.definition.template_v2.subject_name_flags.san_require_dns #=> Boolean
1227
+ # resp.template.definition.template_v2.subject_name_flags.san_require_domain_dns #=> Boolean
1228
+ # resp.template.definition.template_v2.subject_name_flags.san_require_email #=> Boolean
1229
+ # resp.template.definition.template_v2.subject_name_flags.san_require_spn #=> Boolean
1230
+ # resp.template.definition.template_v2.subject_name_flags.san_require_upn #=> Boolean
1231
+ # resp.template.definition.template_v2.superseded_templates #=> Array
1232
+ # resp.template.definition.template_v2.superseded_templates[0] #=> String
1233
+ # resp.template.definition.template_v3.certificate_validity.renewal_period.period #=> Integer
1234
+ # resp.template.definition.template_v3.certificate_validity.renewal_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1235
+ # resp.template.definition.template_v3.certificate_validity.validity_period.period #=> Integer
1236
+ # resp.template.definition.template_v3.certificate_validity.validity_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1237
+ # resp.template.definition.template_v3.enrollment_flags.enable_key_reuse_on_nt_token_keyset_storage_full #=> Boolean
1238
+ # resp.template.definition.template_v3.enrollment_flags.include_symmetric_algorithms #=> Boolean
1239
+ # resp.template.definition.template_v3.enrollment_flags.no_security_extension #=> Boolean
1240
+ # resp.template.definition.template_v3.enrollment_flags.remove_invalid_certificate_from_personal_store #=> Boolean
1241
+ # resp.template.definition.template_v3.enrollment_flags.user_interaction_required #=> Boolean
1242
+ # resp.template.definition.template_v3.extensions.application_policies.critical #=> Boolean
1243
+ # resp.template.definition.template_v3.extensions.application_policies.policies #=> Array
1244
+ # resp.template.definition.template_v3.extensions.application_policies.policies[0].policy_object_identifier #=> String
1245
+ # resp.template.definition.template_v3.extensions.application_policies.policies[0].policy_type #=> String, one of "ALL_APPLICATION_POLICIES", "ANY_PURPOSE", "ATTESTATION_IDENTITY_KEY_CERTIFICATE", "CERTIFICATE_REQUEST_AGENT", "CLIENT_AUTHENTICATION", "CODE_SIGNING", "CTL_USAGE", "DIGITAL_RIGHTS", "DIRECTORY_SERVICE_EMAIL_REPLICATION", "DISALLOWED_LIST", "DNS_SERVER_TRUST", "DOCUMENT_ENCRYPTION", "DOCUMENT_SIGNING", "DYNAMIC_CODE_GENERATOR", "EARLY_LAUNCH_ANTIMALWARE_DRIVER", "EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "ENCLAVE", "ENCRYPTING_FILE_SYSTEM", "ENDORSEMENT_KEY_CERTIFICATE", "FILE_RECOVERY", "HAL_EXTENSION", "IP_SECURITY_END_SYSTEM", "IP_SECURITY_IKE_INTERMEDIATE", "IP_SECURITY_TUNNEL_TERMINATION", "IP_SECURITY_USER", "ISOLATED_USER_MODE", "KDC_AUTHENTICATION", "KERNEL_MODE_CODE_SIGNING", "KEY_PACK_LICENSES", "KEY_RECOVERY", "KEY_RECOVERY_AGENT", "LICENSE_SERVER_VERIFICATION", "LIFETIME_SIGNING", "MICROSOFT_PUBLISHER", "MICROSOFT_TIME_STAMPING", "MICROSOFT_TRUST_LIST_SIGNING", "OCSP_SIGNING", "OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "PLATFORM_CERTIFICATE", "PREVIEW_BUILD_SIGNING", "PRIVATE_KEY_ARCHIVAL", "PROTECTED_PROCESS_LIGHT_VERIFICATION", "PROTECTED_PROCESS_VERIFICATION", "QUALIFIED_SUBORDINATION", "REVOKED_LIST_SIGNER", "ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION", "ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION", "ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL", "ROOT_LIST_SIGNER", "SECURE_EMAIL", "SERVER_AUTHENTICATION", "SMART_CARD_LOGIN", "SPC_ENCRYPTED_DIGEST_RETRY_COUNT", "SPC_RELAXED_PE_MARKER_CHECK", "TIME_STAMPING", "WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_VERIFICATION", "WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION", "WINDOWS_KITS_COMPONENT", "WINDOWS_RT_VERIFICATION", "WINDOWS_SOFTWARE_EXTENSION_VERIFICATION", "WINDOWS_STORE", "WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "WINDOWS_TCB_COMPONENT", "WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT", "WINDOWS_UPDATE"
1246
+ # resp.template.definition.template_v3.extensions.key_usage.critical #=> Boolean
1247
+ # resp.template.definition.template_v3.extensions.key_usage.usage_flags.data_encipherment #=> Boolean
1248
+ # resp.template.definition.template_v3.extensions.key_usage.usage_flags.digital_signature #=> Boolean
1249
+ # resp.template.definition.template_v3.extensions.key_usage.usage_flags.key_agreement #=> Boolean
1250
+ # resp.template.definition.template_v3.extensions.key_usage.usage_flags.key_encipherment #=> Boolean
1251
+ # resp.template.definition.template_v3.extensions.key_usage.usage_flags.non_repudiation #=> Boolean
1252
+ # resp.template.definition.template_v3.general_flags.auto_enrollment #=> Boolean
1253
+ # resp.template.definition.template_v3.general_flags.machine_type #=> Boolean
1254
+ # resp.template.definition.template_v3.hash_algorithm #=> String, one of "SHA256", "SHA384", "SHA512"
1255
+ # resp.template.definition.template_v3.private_key_attributes.algorithm #=> String, one of "RSA", "ECDH_P256", "ECDH_P384", "ECDH_P521"
1256
+ # resp.template.definition.template_v3.private_key_attributes.crypto_providers #=> Array
1257
+ # resp.template.definition.template_v3.private_key_attributes.crypto_providers[0] #=> String
1258
+ # resp.template.definition.template_v3.private_key_attributes.key_spec #=> String, one of "KEY_EXCHANGE", "SIGNATURE"
1259
+ # resp.template.definition.template_v3.private_key_attributes.key_usage_property.property_flags.decrypt #=> Boolean
1260
+ # resp.template.definition.template_v3.private_key_attributes.key_usage_property.property_flags.key_agreement #=> Boolean
1261
+ # resp.template.definition.template_v3.private_key_attributes.key_usage_property.property_flags.sign #=> Boolean
1262
+ # resp.template.definition.template_v3.private_key_attributes.key_usage_property.property_type #=> String, one of "ALL"
1263
+ # resp.template.definition.template_v3.private_key_attributes.minimal_key_length #=> Integer
1264
+ # resp.template.definition.template_v3.private_key_flags.client_version #=> String, one of "WINDOWS_SERVER_2008", "WINDOWS_SERVER_2008_R2", "WINDOWS_SERVER_2012", "WINDOWS_SERVER_2012_R2", "WINDOWS_SERVER_2016"
1265
+ # resp.template.definition.template_v3.private_key_flags.exportable_key #=> Boolean
1266
+ # resp.template.definition.template_v3.private_key_flags.require_alternate_signature_algorithm #=> Boolean
1267
+ # resp.template.definition.template_v3.private_key_flags.strong_key_protection_required #=> Boolean
1268
+ # resp.template.definition.template_v3.subject_name_flags.require_common_name #=> Boolean
1269
+ # resp.template.definition.template_v3.subject_name_flags.require_directory_path #=> Boolean
1270
+ # resp.template.definition.template_v3.subject_name_flags.require_dns_as_cn #=> Boolean
1271
+ # resp.template.definition.template_v3.subject_name_flags.require_email #=> Boolean
1272
+ # resp.template.definition.template_v3.subject_name_flags.san_require_directory_guid #=> Boolean
1273
+ # resp.template.definition.template_v3.subject_name_flags.san_require_dns #=> Boolean
1274
+ # resp.template.definition.template_v3.subject_name_flags.san_require_domain_dns #=> Boolean
1275
+ # resp.template.definition.template_v3.subject_name_flags.san_require_email #=> Boolean
1276
+ # resp.template.definition.template_v3.subject_name_flags.san_require_spn #=> Boolean
1277
+ # resp.template.definition.template_v3.subject_name_flags.san_require_upn #=> Boolean
1278
+ # resp.template.definition.template_v3.superseded_templates #=> Array
1279
+ # resp.template.definition.template_v3.superseded_templates[0] #=> String
1280
+ # resp.template.definition.template_v4.certificate_validity.renewal_period.period #=> Integer
1281
+ # resp.template.definition.template_v4.certificate_validity.renewal_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1282
+ # resp.template.definition.template_v4.certificate_validity.validity_period.period #=> Integer
1283
+ # resp.template.definition.template_v4.certificate_validity.validity_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1284
+ # resp.template.definition.template_v4.enrollment_flags.enable_key_reuse_on_nt_token_keyset_storage_full #=> Boolean
1285
+ # resp.template.definition.template_v4.enrollment_flags.include_symmetric_algorithms #=> Boolean
1286
+ # resp.template.definition.template_v4.enrollment_flags.no_security_extension #=> Boolean
1287
+ # resp.template.definition.template_v4.enrollment_flags.remove_invalid_certificate_from_personal_store #=> Boolean
1288
+ # resp.template.definition.template_v4.enrollment_flags.user_interaction_required #=> Boolean
1289
+ # resp.template.definition.template_v4.extensions.application_policies.critical #=> Boolean
1290
+ # resp.template.definition.template_v4.extensions.application_policies.policies #=> Array
1291
+ # resp.template.definition.template_v4.extensions.application_policies.policies[0].policy_object_identifier #=> String
1292
+ # resp.template.definition.template_v4.extensions.application_policies.policies[0].policy_type #=> String, one of "ALL_APPLICATION_POLICIES", "ANY_PURPOSE", "ATTESTATION_IDENTITY_KEY_CERTIFICATE", "CERTIFICATE_REQUEST_AGENT", "CLIENT_AUTHENTICATION", "CODE_SIGNING", "CTL_USAGE", "DIGITAL_RIGHTS", "DIRECTORY_SERVICE_EMAIL_REPLICATION", "DISALLOWED_LIST", "DNS_SERVER_TRUST", "DOCUMENT_ENCRYPTION", "DOCUMENT_SIGNING", "DYNAMIC_CODE_GENERATOR", "EARLY_LAUNCH_ANTIMALWARE_DRIVER", "EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "ENCLAVE", "ENCRYPTING_FILE_SYSTEM", "ENDORSEMENT_KEY_CERTIFICATE", "FILE_RECOVERY", "HAL_EXTENSION", "IP_SECURITY_END_SYSTEM", "IP_SECURITY_IKE_INTERMEDIATE", "IP_SECURITY_TUNNEL_TERMINATION", "IP_SECURITY_USER", "ISOLATED_USER_MODE", "KDC_AUTHENTICATION", "KERNEL_MODE_CODE_SIGNING", "KEY_PACK_LICENSES", "KEY_RECOVERY", "KEY_RECOVERY_AGENT", "LICENSE_SERVER_VERIFICATION", "LIFETIME_SIGNING", "MICROSOFT_PUBLISHER", "MICROSOFT_TIME_STAMPING", "MICROSOFT_TRUST_LIST_SIGNING", "OCSP_SIGNING", "OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "PLATFORM_CERTIFICATE", "PREVIEW_BUILD_SIGNING", "PRIVATE_KEY_ARCHIVAL", "PROTECTED_PROCESS_LIGHT_VERIFICATION", "PROTECTED_PROCESS_VERIFICATION", "QUALIFIED_SUBORDINATION", "REVOKED_LIST_SIGNER", "ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION", "ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION", "ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL", "ROOT_LIST_SIGNER", "SECURE_EMAIL", "SERVER_AUTHENTICATION", "SMART_CARD_LOGIN", "SPC_ENCRYPTED_DIGEST_RETRY_COUNT", "SPC_RELAXED_PE_MARKER_CHECK", "TIME_STAMPING", "WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_VERIFICATION", "WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION", "WINDOWS_KITS_COMPONENT", "WINDOWS_RT_VERIFICATION", "WINDOWS_SOFTWARE_EXTENSION_VERIFICATION", "WINDOWS_STORE", "WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "WINDOWS_TCB_COMPONENT", "WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT", "WINDOWS_UPDATE"
1293
+ # resp.template.definition.template_v4.extensions.key_usage.critical #=> Boolean
1294
+ # resp.template.definition.template_v4.extensions.key_usage.usage_flags.data_encipherment #=> Boolean
1295
+ # resp.template.definition.template_v4.extensions.key_usage.usage_flags.digital_signature #=> Boolean
1296
+ # resp.template.definition.template_v4.extensions.key_usage.usage_flags.key_agreement #=> Boolean
1297
+ # resp.template.definition.template_v4.extensions.key_usage.usage_flags.key_encipherment #=> Boolean
1298
+ # resp.template.definition.template_v4.extensions.key_usage.usage_flags.non_repudiation #=> Boolean
1299
+ # resp.template.definition.template_v4.general_flags.auto_enrollment #=> Boolean
1300
+ # resp.template.definition.template_v4.general_flags.machine_type #=> Boolean
1301
+ # resp.template.definition.template_v4.hash_algorithm #=> String, one of "SHA256", "SHA384", "SHA512"
1302
+ # resp.template.definition.template_v4.private_key_attributes.algorithm #=> String, one of "RSA", "ECDH_P256", "ECDH_P384", "ECDH_P521"
1303
+ # resp.template.definition.template_v4.private_key_attributes.crypto_providers #=> Array
1304
+ # resp.template.definition.template_v4.private_key_attributes.crypto_providers[0] #=> String
1305
+ # resp.template.definition.template_v4.private_key_attributes.key_spec #=> String, one of "KEY_EXCHANGE", "SIGNATURE"
1306
+ # resp.template.definition.template_v4.private_key_attributes.key_usage_property.property_flags.decrypt #=> Boolean
1307
+ # resp.template.definition.template_v4.private_key_attributes.key_usage_property.property_flags.key_agreement #=> Boolean
1308
+ # resp.template.definition.template_v4.private_key_attributes.key_usage_property.property_flags.sign #=> Boolean
1309
+ # resp.template.definition.template_v4.private_key_attributes.key_usage_property.property_type #=> String, one of "ALL"
1310
+ # resp.template.definition.template_v4.private_key_attributes.minimal_key_length #=> Integer
1311
+ # resp.template.definition.template_v4.private_key_flags.client_version #=> String, one of "WINDOWS_SERVER_2012", "WINDOWS_SERVER_2012_R2", "WINDOWS_SERVER_2016"
1312
+ # resp.template.definition.template_v4.private_key_flags.exportable_key #=> Boolean
1313
+ # resp.template.definition.template_v4.private_key_flags.require_alternate_signature_algorithm #=> Boolean
1314
+ # resp.template.definition.template_v4.private_key_flags.require_same_key_renewal #=> Boolean
1315
+ # resp.template.definition.template_v4.private_key_flags.strong_key_protection_required #=> Boolean
1316
+ # resp.template.definition.template_v4.private_key_flags.use_legacy_provider #=> Boolean
1317
+ # resp.template.definition.template_v4.subject_name_flags.require_common_name #=> Boolean
1318
+ # resp.template.definition.template_v4.subject_name_flags.require_directory_path #=> Boolean
1319
+ # resp.template.definition.template_v4.subject_name_flags.require_dns_as_cn #=> Boolean
1320
+ # resp.template.definition.template_v4.subject_name_flags.require_email #=> Boolean
1321
+ # resp.template.definition.template_v4.subject_name_flags.san_require_directory_guid #=> Boolean
1322
+ # resp.template.definition.template_v4.subject_name_flags.san_require_dns #=> Boolean
1323
+ # resp.template.definition.template_v4.subject_name_flags.san_require_domain_dns #=> Boolean
1324
+ # resp.template.definition.template_v4.subject_name_flags.san_require_email #=> Boolean
1325
+ # resp.template.definition.template_v4.subject_name_flags.san_require_spn #=> Boolean
1326
+ # resp.template.definition.template_v4.subject_name_flags.san_require_upn #=> Boolean
1327
+ # resp.template.definition.template_v4.superseded_templates #=> Array
1328
+ # resp.template.definition.template_v4.superseded_templates[0] #=> String
1329
+ # resp.template.name #=> String
1330
+ # resp.template.object_identifier #=> String
1331
+ # resp.template.policy_schema #=> Integer
1332
+ # resp.template.revision.major_revision #=> Integer
1333
+ # resp.template.revision.minor_revision #=> Integer
1334
+ # resp.template.status #=> String, one of "ACTIVE", "DELETING"
1335
+ # resp.template.updated_at #=> Time
1336
+ #
1337
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/GetTemplate AWS API Documentation
1338
+ #
1339
+ # @overload get_template(params = {})
1340
+ # @param [Hash] params ({})
1341
+ def get_template(params = {}, options = {})
1342
+ req = build_request(:get_template, params)
1343
+ req.send_request(options)
1344
+ end
1345
+
1346
+ # Retrieves the group access control entries for a template.
1347
+ #
1348
+ # @option params [required, String] :group_security_identifier
1349
+ # Security identifier (SID) of the group object from Active Directory.
1350
+ # The SID starts with "S-".
1351
+ #
1352
+ # @option params [required, String] :template_arn
1353
+ # The Amazon Resource Name (ARN) that was returned when you called
1354
+ # [CreateTemplate][1].
1355
+ #
1356
+ #
1357
+ #
1358
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html
1359
+ #
1360
+ # @return [Types::GetTemplateGroupAccessControlEntryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1361
+ #
1362
+ # * {Types::GetTemplateGroupAccessControlEntryResponse#access_control_entry #access_control_entry} => Types::AccessControlEntry
1363
+ #
1364
+ # @example Request syntax with placeholder values
1365
+ #
1366
+ # resp = client.get_template_group_access_control_entry({
1367
+ # group_security_identifier: "GroupSecurityIdentifier", # required
1368
+ # template_arn: "TemplateArn", # required
1369
+ # })
1370
+ #
1371
+ # @example Response structure
1372
+ #
1373
+ # resp.access_control_entry.access_rights.auto_enroll #=> String, one of "ALLOW", "DENY"
1374
+ # resp.access_control_entry.access_rights.enroll #=> String, one of "ALLOW", "DENY"
1375
+ # resp.access_control_entry.created_at #=> Time
1376
+ # resp.access_control_entry.group_display_name #=> String
1377
+ # resp.access_control_entry.group_security_identifier #=> String
1378
+ # resp.access_control_entry.template_arn #=> String
1379
+ # resp.access_control_entry.updated_at #=> Time
1380
+ #
1381
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/GetTemplateGroupAccessControlEntry AWS API Documentation
1382
+ #
1383
+ # @overload get_template_group_access_control_entry(params = {})
1384
+ # @param [Hash] params ({})
1385
+ def get_template_group_access_control_entry(params = {}, options = {})
1386
+ req = build_request(:get_template_group_access_control_entry, params)
1387
+ req.send_request(options)
1388
+ end
1389
+
1390
+ # Lists the connectors that you created by using the
1391
+ # [https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API\_CreateConnector][1]
1392
+ # action.
1393
+ #
1394
+ #
1395
+ #
1396
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector
1397
+ #
1398
+ # @option params [Integer] :max_results
1399
+ # Use this parameter when paginating results to specify the maximum
1400
+ # number of items to return in the response on each page. If additional
1401
+ # items exist beyond the number you specify, the `NextToken` element is
1402
+ # sent in the response. Use this `NextToken` value in a subsequent
1403
+ # request to retrieve additional items.
1404
+ #
1405
+ # @option params [String] :next_token
1406
+ # Use this parameter when paginating results in a subsequent request
1407
+ # after you receive a response with truncated results. Set it to the
1408
+ # value of the `NextToken` parameter from the response you just
1409
+ # received.
1410
+ #
1411
+ # @return [Types::ListConnectorsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1412
+ #
1413
+ # * {Types::ListConnectorsResponse#connectors #connectors} => Array&lt;Types::ConnectorSummary&gt;
1414
+ # * {Types::ListConnectorsResponse#next_token #next_token} => String
1415
+ #
1416
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1417
+ #
1418
+ # @example Request syntax with placeholder values
1419
+ #
1420
+ # resp = client.list_connectors({
1421
+ # max_results: 1,
1422
+ # next_token: "NextToken",
1423
+ # })
1424
+ #
1425
+ # @example Response structure
1426
+ #
1427
+ # resp.connectors #=> Array
1428
+ # resp.connectors[0].arn #=> String
1429
+ # resp.connectors[0].certificate_authority_arn #=> String
1430
+ # resp.connectors[0].certificate_enrollment_policy_server_endpoint #=> String
1431
+ # resp.connectors[0].created_at #=> Time
1432
+ # resp.connectors[0].directory_id #=> String
1433
+ # resp.connectors[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
1434
+ # resp.connectors[0].status_reason #=> String, one of "DIRECTORY_ACCESS_DENIED", "INTERNAL_FAILURE", "PRIVATECA_ACCESS_DENIED", "PRIVATECA_RESOURCE_NOT_FOUND", "SECURITY_GROUP_NOT_IN_VPC", "VPC_ACCESS_DENIED", "VPC_ENDPOINT_LIMIT_EXCEEDED", "VPC_RESOURCE_NOT_FOUND"
1435
+ # resp.connectors[0].updated_at #=> Time
1436
+ # resp.connectors[0].vpc_information.security_group_ids #=> Array
1437
+ # resp.connectors[0].vpc_information.security_group_ids[0] #=> String
1438
+ # resp.next_token #=> String
1439
+ #
1440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/ListConnectors AWS API Documentation
1441
+ #
1442
+ # @overload list_connectors(params = {})
1443
+ # @param [Hash] params ({})
1444
+ def list_connectors(params = {}, options = {})
1445
+ req = build_request(:list_connectors, params)
1446
+ req.send_request(options)
1447
+ end
1448
+
1449
+ # Lists the directory registrations that you created by using the
1450
+ # [https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API\_CreateDirectoryRegistration][1]
1451
+ # action.
1452
+ #
1453
+ #
1454
+ #
1455
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration
1456
+ #
1457
+ # @option params [Integer] :max_results
1458
+ # Use this parameter when paginating results to specify the maximum
1459
+ # number of items to return in the response on each page. If additional
1460
+ # items exist beyond the number you specify, the `NextToken` element is
1461
+ # sent in the response. Use this `NextToken` value in a subsequent
1462
+ # request to retrieve additional items.
1463
+ #
1464
+ # @option params [String] :next_token
1465
+ # Use this parameter when paginating results in a subsequent request
1466
+ # after you receive a response with truncated results. Set it to the
1467
+ # value of the `NextToken` parameter from the response you just
1468
+ # received.
1469
+ #
1470
+ # @return [Types::ListDirectoryRegistrationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1471
+ #
1472
+ # * {Types::ListDirectoryRegistrationsResponse#directory_registrations #directory_registrations} => Array&lt;Types::DirectoryRegistrationSummary&gt;
1473
+ # * {Types::ListDirectoryRegistrationsResponse#next_token #next_token} => String
1474
+ #
1475
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1476
+ #
1477
+ # @example Request syntax with placeholder values
1478
+ #
1479
+ # resp = client.list_directory_registrations({
1480
+ # max_results: 1,
1481
+ # next_token: "NextToken",
1482
+ # })
1483
+ #
1484
+ # @example Response structure
1485
+ #
1486
+ # resp.directory_registrations #=> Array
1487
+ # resp.directory_registrations[0].arn #=> String
1488
+ # resp.directory_registrations[0].created_at #=> Time
1489
+ # resp.directory_registrations[0].directory_id #=> String
1490
+ # resp.directory_registrations[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
1491
+ # resp.directory_registrations[0].status_reason #=> String, one of "DIRECTORY_ACCESS_DENIED", "DIRECTORY_RESOURCE_NOT_FOUND", "DIRECTORY_NOT_ACTIVE", "DIRECTORY_NOT_REACHABLE", "DIRECTORY_TYPE_NOT_SUPPORTED", "INTERNAL_FAILURE"
1492
+ # resp.directory_registrations[0].updated_at #=> Time
1493
+ # resp.next_token #=> String
1494
+ #
1495
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/ListDirectoryRegistrations AWS API Documentation
1496
+ #
1497
+ # @overload list_directory_registrations(params = {})
1498
+ # @param [Hash] params ({})
1499
+ def list_directory_registrations(params = {}, options = {})
1500
+ req = build_request(:list_directory_registrations, params)
1501
+ req.send_request(options)
1502
+ end
1503
+
1504
+ # Lists the service principal names that the connector uses to
1505
+ # authenticate with Active Directory.
1506
+ #
1507
+ # @option params [required, String] :directory_registration_arn
1508
+ # The Amazon Resource Name (ARN) that was returned when you called
1509
+ # [CreateDirectoryRegistration][1].
1510
+ #
1511
+ #
1512
+ #
1513
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateDirectoryRegistration.html
1514
+ #
1515
+ # @option params [Integer] :max_results
1516
+ # Use this parameter when paginating results to specify the maximum
1517
+ # number of items to return in the response on each page. If additional
1518
+ # items exist beyond the number you specify, the `NextToken` element is
1519
+ # sent in the response. Use this `NextToken` value in a subsequent
1520
+ # request to retrieve additional items.
1521
+ #
1522
+ # @option params [String] :next_token
1523
+ # Use this parameter when paginating results in a subsequent request
1524
+ # after you receive a response with truncated results. Set it to the
1525
+ # value of the `NextToken` parameter from the response you just
1526
+ # received.
1527
+ #
1528
+ # @return [Types::ListServicePrincipalNamesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1529
+ #
1530
+ # * {Types::ListServicePrincipalNamesResponse#next_token #next_token} => String
1531
+ # * {Types::ListServicePrincipalNamesResponse#service_principal_names #service_principal_names} => Array&lt;Types::ServicePrincipalNameSummary&gt;
1532
+ #
1533
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1534
+ #
1535
+ # @example Request syntax with placeholder values
1536
+ #
1537
+ # resp = client.list_service_principal_names({
1538
+ # directory_registration_arn: "DirectoryRegistrationArn", # required
1539
+ # max_results: 1,
1540
+ # next_token: "NextToken",
1541
+ # })
1542
+ #
1543
+ # @example Response structure
1544
+ #
1545
+ # resp.next_token #=> String
1546
+ # resp.service_principal_names #=> Array
1547
+ # resp.service_principal_names[0].connector_arn #=> String
1548
+ # resp.service_principal_names[0].created_at #=> Time
1549
+ # resp.service_principal_names[0].directory_registration_arn #=> String
1550
+ # resp.service_principal_names[0].status #=> String, one of "CREATING", "ACTIVE", "DELETING", "FAILED"
1551
+ # resp.service_principal_names[0].status_reason #=> String, one of "DIRECTORY_ACCESS_DENIED", "DIRECTORY_NOT_REACHABLE", "DIRECTORY_RESOURCE_NOT_FOUND", "SPN_EXISTS_ON_DIFFERENT_AD_OBJECT", "INTERNAL_FAILURE"
1552
+ # resp.service_principal_names[0].updated_at #=> Time
1553
+ #
1554
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/ListServicePrincipalNames AWS API Documentation
1555
+ #
1556
+ # @overload list_service_principal_names(params = {})
1557
+ # @param [Hash] params ({})
1558
+ def list_service_principal_names(params = {}, options = {})
1559
+ req = build_request(:list_service_principal_names, params)
1560
+ req.send_request(options)
1561
+ end
1562
+
1563
+ # Lists the tags, if any, that are associated with your resource.
1564
+ #
1565
+ # @option params [required, String] :resource_arn
1566
+ # The Amazon Resource Name (ARN) that was returned when you created the
1567
+ # resource.
1568
+ #
1569
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1570
+ #
1571
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Hash&lt;String,String&gt;
1572
+ #
1573
+ # @example Request syntax with placeholder values
1574
+ #
1575
+ # resp = client.list_tags_for_resource({
1576
+ # resource_arn: "String", # required
1577
+ # })
1578
+ #
1579
+ # @example Response structure
1580
+ #
1581
+ # resp.tags #=> Hash
1582
+ # resp.tags["String"] #=> String
1583
+ #
1584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/ListTagsForResource AWS API Documentation
1585
+ #
1586
+ # @overload list_tags_for_resource(params = {})
1587
+ # @param [Hash] params ({})
1588
+ def list_tags_for_resource(params = {}, options = {})
1589
+ req = build_request(:list_tags_for_resource, params)
1590
+ req.send_request(options)
1591
+ end
1592
+
1593
+ # Lists group access control entries you created.
1594
+ #
1595
+ # @option params [Integer] :max_results
1596
+ # Use this parameter when paginating results to specify the maximum
1597
+ # number of items to return in the response on each page. If additional
1598
+ # items exist beyond the number you specify, the `NextToken` element is
1599
+ # sent in the response. Use this `NextToken` value in a subsequent
1600
+ # request to retrieve additional items.
1601
+ #
1602
+ # @option params [String] :next_token
1603
+ # Use this parameter when paginating results in a subsequent request
1604
+ # after you receive a response with truncated results. Set it to the
1605
+ # value of the `NextToken` parameter from the response you just
1606
+ # received.
1607
+ #
1608
+ # @option params [required, String] :template_arn
1609
+ # The Amazon Resource Name (ARN) that was returned when you called
1610
+ # [CreateTemplate][1].
1611
+ #
1612
+ #
1613
+ #
1614
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html
1615
+ #
1616
+ # @return [Types::ListTemplateGroupAccessControlEntriesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1617
+ #
1618
+ # * {Types::ListTemplateGroupAccessControlEntriesResponse#access_control_entries #access_control_entries} => Array&lt;Types::AccessControlEntrySummary&gt;
1619
+ # * {Types::ListTemplateGroupAccessControlEntriesResponse#next_token #next_token} => String
1620
+ #
1621
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1622
+ #
1623
+ # @example Request syntax with placeholder values
1624
+ #
1625
+ # resp = client.list_template_group_access_control_entries({
1626
+ # max_results: 1,
1627
+ # next_token: "NextToken",
1628
+ # template_arn: "TemplateArn", # required
1629
+ # })
1630
+ #
1631
+ # @example Response structure
1632
+ #
1633
+ # resp.access_control_entries #=> Array
1634
+ # resp.access_control_entries[0].access_rights.auto_enroll #=> String, one of "ALLOW", "DENY"
1635
+ # resp.access_control_entries[0].access_rights.enroll #=> String, one of "ALLOW", "DENY"
1636
+ # resp.access_control_entries[0].created_at #=> Time
1637
+ # resp.access_control_entries[0].group_display_name #=> String
1638
+ # resp.access_control_entries[0].group_security_identifier #=> String
1639
+ # resp.access_control_entries[0].template_arn #=> String
1640
+ # resp.access_control_entries[0].updated_at #=> Time
1641
+ # resp.next_token #=> String
1642
+ #
1643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/ListTemplateGroupAccessControlEntries AWS API Documentation
1644
+ #
1645
+ # @overload list_template_group_access_control_entries(params = {})
1646
+ # @param [Hash] params ({})
1647
+ def list_template_group_access_control_entries(params = {}, options = {})
1648
+ req = build_request(:list_template_group_access_control_entries, params)
1649
+ req.send_request(options)
1650
+ end
1651
+
1652
+ # Lists the templates, if any, that are associated with a connector.
1653
+ #
1654
+ # @option params [required, String] :connector_arn
1655
+ # The Amazon Resource Name (ARN) that was returned when you called
1656
+ # [CreateConnector][1].
1657
+ #
1658
+ #
1659
+ #
1660
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateConnector.html
1661
+ #
1662
+ # @option params [Integer] :max_results
1663
+ # Use this parameter when paginating results to specify the maximum
1664
+ # number of items to return in the response on each page. If additional
1665
+ # items exist beyond the number you specify, the `NextToken` element is
1666
+ # sent in the response. Use this `NextToken` value in a subsequent
1667
+ # request to retrieve additional items.
1668
+ #
1669
+ # @option params [String] :next_token
1670
+ # Use this parameter when paginating results in a subsequent request
1671
+ # after you receive a response with truncated results. Set it to the
1672
+ # value of the `NextToken` parameter from the response you just
1673
+ # received.
1674
+ #
1675
+ # @return [Types::ListTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1676
+ #
1677
+ # * {Types::ListTemplatesResponse#next_token #next_token} => String
1678
+ # * {Types::ListTemplatesResponse#templates #templates} => Array&lt;Types::TemplateSummary&gt;
1679
+ #
1680
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1681
+ #
1682
+ # @example Request syntax with placeholder values
1683
+ #
1684
+ # resp = client.list_templates({
1685
+ # connector_arn: "ConnectorArn", # required
1686
+ # max_results: 1,
1687
+ # next_token: "NextToken",
1688
+ # })
1689
+ #
1690
+ # @example Response structure
1691
+ #
1692
+ # resp.next_token #=> String
1693
+ # resp.templates #=> Array
1694
+ # resp.templates[0].arn #=> String
1695
+ # resp.templates[0].connector_arn #=> String
1696
+ # resp.templates[0].created_at #=> Time
1697
+ # resp.templates[0].definition.template_v2.certificate_validity.renewal_period.period #=> Integer
1698
+ # resp.templates[0].definition.template_v2.certificate_validity.renewal_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1699
+ # resp.templates[0].definition.template_v2.certificate_validity.validity_period.period #=> Integer
1700
+ # resp.templates[0].definition.template_v2.certificate_validity.validity_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1701
+ # resp.templates[0].definition.template_v2.enrollment_flags.enable_key_reuse_on_nt_token_keyset_storage_full #=> Boolean
1702
+ # resp.templates[0].definition.template_v2.enrollment_flags.include_symmetric_algorithms #=> Boolean
1703
+ # resp.templates[0].definition.template_v2.enrollment_flags.no_security_extension #=> Boolean
1704
+ # resp.templates[0].definition.template_v2.enrollment_flags.remove_invalid_certificate_from_personal_store #=> Boolean
1705
+ # resp.templates[0].definition.template_v2.enrollment_flags.user_interaction_required #=> Boolean
1706
+ # resp.templates[0].definition.template_v2.extensions.application_policies.critical #=> Boolean
1707
+ # resp.templates[0].definition.template_v2.extensions.application_policies.policies #=> Array
1708
+ # resp.templates[0].definition.template_v2.extensions.application_policies.policies[0].policy_object_identifier #=> String
1709
+ # resp.templates[0].definition.template_v2.extensions.application_policies.policies[0].policy_type #=> String, one of "ALL_APPLICATION_POLICIES", "ANY_PURPOSE", "ATTESTATION_IDENTITY_KEY_CERTIFICATE", "CERTIFICATE_REQUEST_AGENT", "CLIENT_AUTHENTICATION", "CODE_SIGNING", "CTL_USAGE", "DIGITAL_RIGHTS", "DIRECTORY_SERVICE_EMAIL_REPLICATION", "DISALLOWED_LIST", "DNS_SERVER_TRUST", "DOCUMENT_ENCRYPTION", "DOCUMENT_SIGNING", "DYNAMIC_CODE_GENERATOR", "EARLY_LAUNCH_ANTIMALWARE_DRIVER", "EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "ENCLAVE", "ENCRYPTING_FILE_SYSTEM", "ENDORSEMENT_KEY_CERTIFICATE", "FILE_RECOVERY", "HAL_EXTENSION", "IP_SECURITY_END_SYSTEM", "IP_SECURITY_IKE_INTERMEDIATE", "IP_SECURITY_TUNNEL_TERMINATION", "IP_SECURITY_USER", "ISOLATED_USER_MODE", "KDC_AUTHENTICATION", "KERNEL_MODE_CODE_SIGNING", "KEY_PACK_LICENSES", "KEY_RECOVERY", "KEY_RECOVERY_AGENT", "LICENSE_SERVER_VERIFICATION", "LIFETIME_SIGNING", "MICROSOFT_PUBLISHER", "MICROSOFT_TIME_STAMPING", "MICROSOFT_TRUST_LIST_SIGNING", "OCSP_SIGNING", "OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "PLATFORM_CERTIFICATE", "PREVIEW_BUILD_SIGNING", "PRIVATE_KEY_ARCHIVAL", "PROTECTED_PROCESS_LIGHT_VERIFICATION", "PROTECTED_PROCESS_VERIFICATION", "QUALIFIED_SUBORDINATION", "REVOKED_LIST_SIGNER", "ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION", "ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION", "ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL", "ROOT_LIST_SIGNER", "SECURE_EMAIL", "SERVER_AUTHENTICATION", "SMART_CARD_LOGIN", "SPC_ENCRYPTED_DIGEST_RETRY_COUNT", "SPC_RELAXED_PE_MARKER_CHECK", "TIME_STAMPING", "WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_VERIFICATION", "WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION", "WINDOWS_KITS_COMPONENT", "WINDOWS_RT_VERIFICATION", "WINDOWS_SOFTWARE_EXTENSION_VERIFICATION", "WINDOWS_STORE", "WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "WINDOWS_TCB_COMPONENT", "WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT", "WINDOWS_UPDATE"
1710
+ # resp.templates[0].definition.template_v2.extensions.key_usage.critical #=> Boolean
1711
+ # resp.templates[0].definition.template_v2.extensions.key_usage.usage_flags.data_encipherment #=> Boolean
1712
+ # resp.templates[0].definition.template_v2.extensions.key_usage.usage_flags.digital_signature #=> Boolean
1713
+ # resp.templates[0].definition.template_v2.extensions.key_usage.usage_flags.key_agreement #=> Boolean
1714
+ # resp.templates[0].definition.template_v2.extensions.key_usage.usage_flags.key_encipherment #=> Boolean
1715
+ # resp.templates[0].definition.template_v2.extensions.key_usage.usage_flags.non_repudiation #=> Boolean
1716
+ # resp.templates[0].definition.template_v2.general_flags.auto_enrollment #=> Boolean
1717
+ # resp.templates[0].definition.template_v2.general_flags.machine_type #=> Boolean
1718
+ # resp.templates[0].definition.template_v2.private_key_attributes.crypto_providers #=> Array
1719
+ # resp.templates[0].definition.template_v2.private_key_attributes.crypto_providers[0] #=> String
1720
+ # resp.templates[0].definition.template_v2.private_key_attributes.key_spec #=> String, one of "KEY_EXCHANGE", "SIGNATURE"
1721
+ # resp.templates[0].definition.template_v2.private_key_attributes.minimal_key_length #=> Integer
1722
+ # resp.templates[0].definition.template_v2.private_key_flags.client_version #=> String, one of "WINDOWS_SERVER_2003", "WINDOWS_SERVER_2008", "WINDOWS_SERVER_2008_R2", "WINDOWS_SERVER_2012", "WINDOWS_SERVER_2012_R2", "WINDOWS_SERVER_2016"
1723
+ # resp.templates[0].definition.template_v2.private_key_flags.exportable_key #=> Boolean
1724
+ # resp.templates[0].definition.template_v2.private_key_flags.strong_key_protection_required #=> Boolean
1725
+ # resp.templates[0].definition.template_v2.subject_name_flags.require_common_name #=> Boolean
1726
+ # resp.templates[0].definition.template_v2.subject_name_flags.require_directory_path #=> Boolean
1727
+ # resp.templates[0].definition.template_v2.subject_name_flags.require_dns_as_cn #=> Boolean
1728
+ # resp.templates[0].definition.template_v2.subject_name_flags.require_email #=> Boolean
1729
+ # resp.templates[0].definition.template_v2.subject_name_flags.san_require_directory_guid #=> Boolean
1730
+ # resp.templates[0].definition.template_v2.subject_name_flags.san_require_dns #=> Boolean
1731
+ # resp.templates[0].definition.template_v2.subject_name_flags.san_require_domain_dns #=> Boolean
1732
+ # resp.templates[0].definition.template_v2.subject_name_flags.san_require_email #=> Boolean
1733
+ # resp.templates[0].definition.template_v2.subject_name_flags.san_require_spn #=> Boolean
1734
+ # resp.templates[0].definition.template_v2.subject_name_flags.san_require_upn #=> Boolean
1735
+ # resp.templates[0].definition.template_v2.superseded_templates #=> Array
1736
+ # resp.templates[0].definition.template_v2.superseded_templates[0] #=> String
1737
+ # resp.templates[0].definition.template_v3.certificate_validity.renewal_period.period #=> Integer
1738
+ # resp.templates[0].definition.template_v3.certificate_validity.renewal_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1739
+ # resp.templates[0].definition.template_v3.certificate_validity.validity_period.period #=> Integer
1740
+ # resp.templates[0].definition.template_v3.certificate_validity.validity_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1741
+ # resp.templates[0].definition.template_v3.enrollment_flags.enable_key_reuse_on_nt_token_keyset_storage_full #=> Boolean
1742
+ # resp.templates[0].definition.template_v3.enrollment_flags.include_symmetric_algorithms #=> Boolean
1743
+ # resp.templates[0].definition.template_v3.enrollment_flags.no_security_extension #=> Boolean
1744
+ # resp.templates[0].definition.template_v3.enrollment_flags.remove_invalid_certificate_from_personal_store #=> Boolean
1745
+ # resp.templates[0].definition.template_v3.enrollment_flags.user_interaction_required #=> Boolean
1746
+ # resp.templates[0].definition.template_v3.extensions.application_policies.critical #=> Boolean
1747
+ # resp.templates[0].definition.template_v3.extensions.application_policies.policies #=> Array
1748
+ # resp.templates[0].definition.template_v3.extensions.application_policies.policies[0].policy_object_identifier #=> String
1749
+ # resp.templates[0].definition.template_v3.extensions.application_policies.policies[0].policy_type #=> String, one of "ALL_APPLICATION_POLICIES", "ANY_PURPOSE", "ATTESTATION_IDENTITY_KEY_CERTIFICATE", "CERTIFICATE_REQUEST_AGENT", "CLIENT_AUTHENTICATION", "CODE_SIGNING", "CTL_USAGE", "DIGITAL_RIGHTS", "DIRECTORY_SERVICE_EMAIL_REPLICATION", "DISALLOWED_LIST", "DNS_SERVER_TRUST", "DOCUMENT_ENCRYPTION", "DOCUMENT_SIGNING", "DYNAMIC_CODE_GENERATOR", "EARLY_LAUNCH_ANTIMALWARE_DRIVER", "EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "ENCLAVE", "ENCRYPTING_FILE_SYSTEM", "ENDORSEMENT_KEY_CERTIFICATE", "FILE_RECOVERY", "HAL_EXTENSION", "IP_SECURITY_END_SYSTEM", "IP_SECURITY_IKE_INTERMEDIATE", "IP_SECURITY_TUNNEL_TERMINATION", "IP_SECURITY_USER", "ISOLATED_USER_MODE", "KDC_AUTHENTICATION", "KERNEL_MODE_CODE_SIGNING", "KEY_PACK_LICENSES", "KEY_RECOVERY", "KEY_RECOVERY_AGENT", "LICENSE_SERVER_VERIFICATION", "LIFETIME_SIGNING", "MICROSOFT_PUBLISHER", "MICROSOFT_TIME_STAMPING", "MICROSOFT_TRUST_LIST_SIGNING", "OCSP_SIGNING", "OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "PLATFORM_CERTIFICATE", "PREVIEW_BUILD_SIGNING", "PRIVATE_KEY_ARCHIVAL", "PROTECTED_PROCESS_LIGHT_VERIFICATION", "PROTECTED_PROCESS_VERIFICATION", "QUALIFIED_SUBORDINATION", "REVOKED_LIST_SIGNER", "ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION", "ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION", "ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL", "ROOT_LIST_SIGNER", "SECURE_EMAIL", "SERVER_AUTHENTICATION", "SMART_CARD_LOGIN", "SPC_ENCRYPTED_DIGEST_RETRY_COUNT", "SPC_RELAXED_PE_MARKER_CHECK", "TIME_STAMPING", "WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_VERIFICATION", "WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION", "WINDOWS_KITS_COMPONENT", "WINDOWS_RT_VERIFICATION", "WINDOWS_SOFTWARE_EXTENSION_VERIFICATION", "WINDOWS_STORE", "WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "WINDOWS_TCB_COMPONENT", "WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT", "WINDOWS_UPDATE"
1750
+ # resp.templates[0].definition.template_v3.extensions.key_usage.critical #=> Boolean
1751
+ # resp.templates[0].definition.template_v3.extensions.key_usage.usage_flags.data_encipherment #=> Boolean
1752
+ # resp.templates[0].definition.template_v3.extensions.key_usage.usage_flags.digital_signature #=> Boolean
1753
+ # resp.templates[0].definition.template_v3.extensions.key_usage.usage_flags.key_agreement #=> Boolean
1754
+ # resp.templates[0].definition.template_v3.extensions.key_usage.usage_flags.key_encipherment #=> Boolean
1755
+ # resp.templates[0].definition.template_v3.extensions.key_usage.usage_flags.non_repudiation #=> Boolean
1756
+ # resp.templates[0].definition.template_v3.general_flags.auto_enrollment #=> Boolean
1757
+ # resp.templates[0].definition.template_v3.general_flags.machine_type #=> Boolean
1758
+ # resp.templates[0].definition.template_v3.hash_algorithm #=> String, one of "SHA256", "SHA384", "SHA512"
1759
+ # resp.templates[0].definition.template_v3.private_key_attributes.algorithm #=> String, one of "RSA", "ECDH_P256", "ECDH_P384", "ECDH_P521"
1760
+ # resp.templates[0].definition.template_v3.private_key_attributes.crypto_providers #=> Array
1761
+ # resp.templates[0].definition.template_v3.private_key_attributes.crypto_providers[0] #=> String
1762
+ # resp.templates[0].definition.template_v3.private_key_attributes.key_spec #=> String, one of "KEY_EXCHANGE", "SIGNATURE"
1763
+ # resp.templates[0].definition.template_v3.private_key_attributes.key_usage_property.property_flags.decrypt #=> Boolean
1764
+ # resp.templates[0].definition.template_v3.private_key_attributes.key_usage_property.property_flags.key_agreement #=> Boolean
1765
+ # resp.templates[0].definition.template_v3.private_key_attributes.key_usage_property.property_flags.sign #=> Boolean
1766
+ # resp.templates[0].definition.template_v3.private_key_attributes.key_usage_property.property_type #=> String, one of "ALL"
1767
+ # resp.templates[0].definition.template_v3.private_key_attributes.minimal_key_length #=> Integer
1768
+ # resp.templates[0].definition.template_v3.private_key_flags.client_version #=> String, one of "WINDOWS_SERVER_2008", "WINDOWS_SERVER_2008_R2", "WINDOWS_SERVER_2012", "WINDOWS_SERVER_2012_R2", "WINDOWS_SERVER_2016"
1769
+ # resp.templates[0].definition.template_v3.private_key_flags.exportable_key #=> Boolean
1770
+ # resp.templates[0].definition.template_v3.private_key_flags.require_alternate_signature_algorithm #=> Boolean
1771
+ # resp.templates[0].definition.template_v3.private_key_flags.strong_key_protection_required #=> Boolean
1772
+ # resp.templates[0].definition.template_v3.subject_name_flags.require_common_name #=> Boolean
1773
+ # resp.templates[0].definition.template_v3.subject_name_flags.require_directory_path #=> Boolean
1774
+ # resp.templates[0].definition.template_v3.subject_name_flags.require_dns_as_cn #=> Boolean
1775
+ # resp.templates[0].definition.template_v3.subject_name_flags.require_email #=> Boolean
1776
+ # resp.templates[0].definition.template_v3.subject_name_flags.san_require_directory_guid #=> Boolean
1777
+ # resp.templates[0].definition.template_v3.subject_name_flags.san_require_dns #=> Boolean
1778
+ # resp.templates[0].definition.template_v3.subject_name_flags.san_require_domain_dns #=> Boolean
1779
+ # resp.templates[0].definition.template_v3.subject_name_flags.san_require_email #=> Boolean
1780
+ # resp.templates[0].definition.template_v3.subject_name_flags.san_require_spn #=> Boolean
1781
+ # resp.templates[0].definition.template_v3.subject_name_flags.san_require_upn #=> Boolean
1782
+ # resp.templates[0].definition.template_v3.superseded_templates #=> Array
1783
+ # resp.templates[0].definition.template_v3.superseded_templates[0] #=> String
1784
+ # resp.templates[0].definition.template_v4.certificate_validity.renewal_period.period #=> Integer
1785
+ # resp.templates[0].definition.template_v4.certificate_validity.renewal_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1786
+ # resp.templates[0].definition.template_v4.certificate_validity.validity_period.period #=> Integer
1787
+ # resp.templates[0].definition.template_v4.certificate_validity.validity_period.period_type #=> String, one of "HOURS", "DAYS", "WEEKS", "MONTHS", "YEARS"
1788
+ # resp.templates[0].definition.template_v4.enrollment_flags.enable_key_reuse_on_nt_token_keyset_storage_full #=> Boolean
1789
+ # resp.templates[0].definition.template_v4.enrollment_flags.include_symmetric_algorithms #=> Boolean
1790
+ # resp.templates[0].definition.template_v4.enrollment_flags.no_security_extension #=> Boolean
1791
+ # resp.templates[0].definition.template_v4.enrollment_flags.remove_invalid_certificate_from_personal_store #=> Boolean
1792
+ # resp.templates[0].definition.template_v4.enrollment_flags.user_interaction_required #=> Boolean
1793
+ # resp.templates[0].definition.template_v4.extensions.application_policies.critical #=> Boolean
1794
+ # resp.templates[0].definition.template_v4.extensions.application_policies.policies #=> Array
1795
+ # resp.templates[0].definition.template_v4.extensions.application_policies.policies[0].policy_object_identifier #=> String
1796
+ # resp.templates[0].definition.template_v4.extensions.application_policies.policies[0].policy_type #=> String, one of "ALL_APPLICATION_POLICIES", "ANY_PURPOSE", "ATTESTATION_IDENTITY_KEY_CERTIFICATE", "CERTIFICATE_REQUEST_AGENT", "CLIENT_AUTHENTICATION", "CODE_SIGNING", "CTL_USAGE", "DIGITAL_RIGHTS", "DIRECTORY_SERVICE_EMAIL_REPLICATION", "DISALLOWED_LIST", "DNS_SERVER_TRUST", "DOCUMENT_ENCRYPTION", "DOCUMENT_SIGNING", "DYNAMIC_CODE_GENERATOR", "EARLY_LAUNCH_ANTIMALWARE_DRIVER", "EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "ENCLAVE", "ENCRYPTING_FILE_SYSTEM", "ENDORSEMENT_KEY_CERTIFICATE", "FILE_RECOVERY", "HAL_EXTENSION", "IP_SECURITY_END_SYSTEM", "IP_SECURITY_IKE_INTERMEDIATE", "IP_SECURITY_TUNNEL_TERMINATION", "IP_SECURITY_USER", "ISOLATED_USER_MODE", "KDC_AUTHENTICATION", "KERNEL_MODE_CODE_SIGNING", "KEY_PACK_LICENSES", "KEY_RECOVERY", "KEY_RECOVERY_AGENT", "LICENSE_SERVER_VERIFICATION", "LIFETIME_SIGNING", "MICROSOFT_PUBLISHER", "MICROSOFT_TIME_STAMPING", "MICROSOFT_TRUST_LIST_SIGNING", "OCSP_SIGNING", "OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "PLATFORM_CERTIFICATE", "PREVIEW_BUILD_SIGNING", "PRIVATE_KEY_ARCHIVAL", "PROTECTED_PROCESS_LIGHT_VERIFICATION", "PROTECTED_PROCESS_VERIFICATION", "QUALIFIED_SUBORDINATION", "REVOKED_LIST_SIGNER", "ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION", "ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION", "ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL", "ROOT_LIST_SIGNER", "SECURE_EMAIL", "SERVER_AUTHENTICATION", "SMART_CARD_LOGIN", "SPC_ENCRYPTED_DIGEST_RETRY_COUNT", "SPC_RELAXED_PE_MARKER_CHECK", "TIME_STAMPING", "WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION", "WINDOWS_HARDWARE_DRIVER_VERIFICATION", "WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION", "WINDOWS_KITS_COMPONENT", "WINDOWS_RT_VERIFICATION", "WINDOWS_SOFTWARE_EXTENSION_VERIFICATION", "WINDOWS_STORE", "WINDOWS_SYSTEM_COMPONENT_VERIFICATION", "WINDOWS_TCB_COMPONENT", "WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT", "WINDOWS_UPDATE"
1797
+ # resp.templates[0].definition.template_v4.extensions.key_usage.critical #=> Boolean
1798
+ # resp.templates[0].definition.template_v4.extensions.key_usage.usage_flags.data_encipherment #=> Boolean
1799
+ # resp.templates[0].definition.template_v4.extensions.key_usage.usage_flags.digital_signature #=> Boolean
1800
+ # resp.templates[0].definition.template_v4.extensions.key_usage.usage_flags.key_agreement #=> Boolean
1801
+ # resp.templates[0].definition.template_v4.extensions.key_usage.usage_flags.key_encipherment #=> Boolean
1802
+ # resp.templates[0].definition.template_v4.extensions.key_usage.usage_flags.non_repudiation #=> Boolean
1803
+ # resp.templates[0].definition.template_v4.general_flags.auto_enrollment #=> Boolean
1804
+ # resp.templates[0].definition.template_v4.general_flags.machine_type #=> Boolean
1805
+ # resp.templates[0].definition.template_v4.hash_algorithm #=> String, one of "SHA256", "SHA384", "SHA512"
1806
+ # resp.templates[0].definition.template_v4.private_key_attributes.algorithm #=> String, one of "RSA", "ECDH_P256", "ECDH_P384", "ECDH_P521"
1807
+ # resp.templates[0].definition.template_v4.private_key_attributes.crypto_providers #=> Array
1808
+ # resp.templates[0].definition.template_v4.private_key_attributes.crypto_providers[0] #=> String
1809
+ # resp.templates[0].definition.template_v4.private_key_attributes.key_spec #=> String, one of "KEY_EXCHANGE", "SIGNATURE"
1810
+ # resp.templates[0].definition.template_v4.private_key_attributes.key_usage_property.property_flags.decrypt #=> Boolean
1811
+ # resp.templates[0].definition.template_v4.private_key_attributes.key_usage_property.property_flags.key_agreement #=> Boolean
1812
+ # resp.templates[0].definition.template_v4.private_key_attributes.key_usage_property.property_flags.sign #=> Boolean
1813
+ # resp.templates[0].definition.template_v4.private_key_attributes.key_usage_property.property_type #=> String, one of "ALL"
1814
+ # resp.templates[0].definition.template_v4.private_key_attributes.minimal_key_length #=> Integer
1815
+ # resp.templates[0].definition.template_v4.private_key_flags.client_version #=> String, one of "WINDOWS_SERVER_2012", "WINDOWS_SERVER_2012_R2", "WINDOWS_SERVER_2016"
1816
+ # resp.templates[0].definition.template_v4.private_key_flags.exportable_key #=> Boolean
1817
+ # resp.templates[0].definition.template_v4.private_key_flags.require_alternate_signature_algorithm #=> Boolean
1818
+ # resp.templates[0].definition.template_v4.private_key_flags.require_same_key_renewal #=> Boolean
1819
+ # resp.templates[0].definition.template_v4.private_key_flags.strong_key_protection_required #=> Boolean
1820
+ # resp.templates[0].definition.template_v4.private_key_flags.use_legacy_provider #=> Boolean
1821
+ # resp.templates[0].definition.template_v4.subject_name_flags.require_common_name #=> Boolean
1822
+ # resp.templates[0].definition.template_v4.subject_name_flags.require_directory_path #=> Boolean
1823
+ # resp.templates[0].definition.template_v4.subject_name_flags.require_dns_as_cn #=> Boolean
1824
+ # resp.templates[0].definition.template_v4.subject_name_flags.require_email #=> Boolean
1825
+ # resp.templates[0].definition.template_v4.subject_name_flags.san_require_directory_guid #=> Boolean
1826
+ # resp.templates[0].definition.template_v4.subject_name_flags.san_require_dns #=> Boolean
1827
+ # resp.templates[0].definition.template_v4.subject_name_flags.san_require_domain_dns #=> Boolean
1828
+ # resp.templates[0].definition.template_v4.subject_name_flags.san_require_email #=> Boolean
1829
+ # resp.templates[0].definition.template_v4.subject_name_flags.san_require_spn #=> Boolean
1830
+ # resp.templates[0].definition.template_v4.subject_name_flags.san_require_upn #=> Boolean
1831
+ # resp.templates[0].definition.template_v4.superseded_templates #=> Array
1832
+ # resp.templates[0].definition.template_v4.superseded_templates[0] #=> String
1833
+ # resp.templates[0].name #=> String
1834
+ # resp.templates[0].object_identifier #=> String
1835
+ # resp.templates[0].policy_schema #=> Integer
1836
+ # resp.templates[0].revision.major_revision #=> Integer
1837
+ # resp.templates[0].revision.minor_revision #=> Integer
1838
+ # resp.templates[0].status #=> String, one of "ACTIVE", "DELETING"
1839
+ # resp.templates[0].updated_at #=> Time
1840
+ #
1841
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/ListTemplates AWS API Documentation
1842
+ #
1843
+ # @overload list_templates(params = {})
1844
+ # @param [Hash] params ({})
1845
+ def list_templates(params = {}, options = {})
1846
+ req = build_request(:list_templates, params)
1847
+ req.send_request(options)
1848
+ end
1849
+
1850
+ # Adds one or more tags to your resource.
1851
+ #
1852
+ # @option params [required, String] :resource_arn
1853
+ # The Amazon Resource Name (ARN) that was returned when you created the
1854
+ # resource.
1855
+ #
1856
+ # @option params [required, Hash<String,String>] :tags
1857
+ # Metadata assigned to a directory registration consisting of a
1858
+ # key-value pair.
1859
+ #
1860
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1861
+ #
1862
+ # @example Request syntax with placeholder values
1863
+ #
1864
+ # resp = client.tag_resource({
1865
+ # resource_arn: "String", # required
1866
+ # tags: { # required
1867
+ # "String" => "String",
1868
+ # },
1869
+ # })
1870
+ #
1871
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/TagResource AWS API Documentation
1872
+ #
1873
+ # @overload tag_resource(params = {})
1874
+ # @param [Hash] params ({})
1875
+ def tag_resource(params = {}, options = {})
1876
+ req = build_request(:tag_resource, params)
1877
+ req.send_request(options)
1878
+ end
1879
+
1880
+ # Removes one or more tags from your resource.
1881
+ #
1882
+ # @option params [required, String] :resource_arn
1883
+ # The Amazon Resource Name (ARN) that was returned when you created the
1884
+ # resource.
1885
+ #
1886
+ # @option params [required, Array<String>] :tag_keys
1887
+ # Specifies a list of tag keys that you want to remove from the
1888
+ # specified resources.
1889
+ #
1890
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1891
+ #
1892
+ # @example Request syntax with placeholder values
1893
+ #
1894
+ # resp = client.untag_resource({
1895
+ # resource_arn: "String", # required
1896
+ # tag_keys: ["String"], # required
1897
+ # })
1898
+ #
1899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/UntagResource AWS API Documentation
1900
+ #
1901
+ # @overload untag_resource(params = {})
1902
+ # @param [Hash] params ({})
1903
+ def untag_resource(params = {}, options = {})
1904
+ req = build_request(:untag_resource, params)
1905
+ req.send_request(options)
1906
+ end
1907
+
1908
+ # Update template configuration to define the information included in
1909
+ # certificates.
1910
+ #
1911
+ # @option params [Types::TemplateDefinition] :definition
1912
+ # Template configuration to define the information included in
1913
+ # certificates. Define certificate validity and renewal periods,
1914
+ # certificate request handling and enrollment options, key usage
1915
+ # extensions, application policies, and cryptography settings.
1916
+ #
1917
+ # @option params [Boolean] :reenroll_all_certificate_holders
1918
+ # This setting allows the major version of a template to be increased
1919
+ # automatically. All members of Active Directory groups that are allowed
1920
+ # to enroll with a template will receive a new certificate issued using
1921
+ # that template.
1922
+ #
1923
+ # @option params [required, String] :template_arn
1924
+ # The Amazon Resource Name (ARN) that was returned when you called
1925
+ # [CreateTemplate][1].
1926
+ #
1927
+ #
1928
+ #
1929
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html
1930
+ #
1931
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1932
+ #
1933
+ # @example Request syntax with placeholder values
1934
+ #
1935
+ # resp = client.update_template({
1936
+ # definition: {
1937
+ # template_v2: {
1938
+ # certificate_validity: { # required
1939
+ # renewal_period: { # required
1940
+ # period: 1, # required
1941
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
1942
+ # },
1943
+ # validity_period: { # required
1944
+ # period: 1, # required
1945
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
1946
+ # },
1947
+ # },
1948
+ # enrollment_flags: { # required
1949
+ # enable_key_reuse_on_nt_token_keyset_storage_full: false,
1950
+ # include_symmetric_algorithms: false,
1951
+ # no_security_extension: false,
1952
+ # remove_invalid_certificate_from_personal_store: false,
1953
+ # user_interaction_required: false,
1954
+ # },
1955
+ # extensions: { # required
1956
+ # application_policies: {
1957
+ # critical: false,
1958
+ # policies: [ # required
1959
+ # {
1960
+ # policy_object_identifier: "CustomObjectIdentifier",
1961
+ # policy_type: "ALL_APPLICATION_POLICIES", # accepts ALL_APPLICATION_POLICIES, ANY_PURPOSE, ATTESTATION_IDENTITY_KEY_CERTIFICATE, CERTIFICATE_REQUEST_AGENT, CLIENT_AUTHENTICATION, CODE_SIGNING, CTL_USAGE, DIGITAL_RIGHTS, DIRECTORY_SERVICE_EMAIL_REPLICATION, DISALLOWED_LIST, DNS_SERVER_TRUST, DOCUMENT_ENCRYPTION, DOCUMENT_SIGNING, DYNAMIC_CODE_GENERATOR, EARLY_LAUNCH_ANTIMALWARE_DRIVER, EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, ENCLAVE, ENCRYPTING_FILE_SYSTEM, ENDORSEMENT_KEY_CERTIFICATE, FILE_RECOVERY, HAL_EXTENSION, IP_SECURITY_END_SYSTEM, IP_SECURITY_IKE_INTERMEDIATE, IP_SECURITY_TUNNEL_TERMINATION, IP_SECURITY_USER, ISOLATED_USER_MODE, KDC_AUTHENTICATION, KERNEL_MODE_CODE_SIGNING, KEY_PACK_LICENSES, KEY_RECOVERY, KEY_RECOVERY_AGENT, LICENSE_SERVER_VERIFICATION, LIFETIME_SIGNING, MICROSOFT_PUBLISHER, MICROSOFT_TIME_STAMPING, MICROSOFT_TRUST_LIST_SIGNING, OCSP_SIGNING, OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, PLATFORM_CERTIFICATE, PREVIEW_BUILD_SIGNING, PRIVATE_KEY_ARCHIVAL, PROTECTED_PROCESS_LIGHT_VERIFICATION, PROTECTED_PROCESS_VERIFICATION, QUALIFIED_SUBORDINATION, REVOKED_LIST_SIGNER, ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION, ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION, ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL, ROOT_LIST_SIGNER, SECURE_EMAIL, SERVER_AUTHENTICATION, SMART_CARD_LOGIN, SPC_ENCRYPTED_DIGEST_RETRY_COUNT, SPC_RELAXED_PE_MARKER_CHECK, TIME_STAMPING, WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_VERIFICATION, WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION, WINDOWS_KITS_COMPONENT, WINDOWS_RT_VERIFICATION, WINDOWS_SOFTWARE_EXTENSION_VERIFICATION, WINDOWS_STORE, WINDOWS_SYSTEM_COMPONENT_VERIFICATION, WINDOWS_TCB_COMPONENT, WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT, WINDOWS_UPDATE
1962
+ # },
1963
+ # ],
1964
+ # },
1965
+ # key_usage: { # required
1966
+ # critical: false,
1967
+ # usage_flags: { # required
1968
+ # data_encipherment: false,
1969
+ # digital_signature: false,
1970
+ # key_agreement: false,
1971
+ # key_encipherment: false,
1972
+ # non_repudiation: false,
1973
+ # },
1974
+ # },
1975
+ # },
1976
+ # general_flags: { # required
1977
+ # auto_enrollment: false,
1978
+ # machine_type: false,
1979
+ # },
1980
+ # private_key_attributes: { # required
1981
+ # crypto_providers: ["CryptoProvidersListMemberString"],
1982
+ # key_spec: "KEY_EXCHANGE", # required, accepts KEY_EXCHANGE, SIGNATURE
1983
+ # minimal_key_length: 1, # required
1984
+ # },
1985
+ # private_key_flags: { # required
1986
+ # client_version: "WINDOWS_SERVER_2003", # required, accepts WINDOWS_SERVER_2003, WINDOWS_SERVER_2008, WINDOWS_SERVER_2008_R2, WINDOWS_SERVER_2012, WINDOWS_SERVER_2012_R2, WINDOWS_SERVER_2016
1987
+ # exportable_key: false,
1988
+ # strong_key_protection_required: false,
1989
+ # },
1990
+ # subject_name_flags: { # required
1991
+ # require_common_name: false,
1992
+ # require_directory_path: false,
1993
+ # require_dns_as_cn: false,
1994
+ # require_email: false,
1995
+ # san_require_directory_guid: false,
1996
+ # san_require_dns: false,
1997
+ # san_require_domain_dns: false,
1998
+ # san_require_email: false,
1999
+ # san_require_spn: false,
2000
+ # san_require_upn: false,
2001
+ # },
2002
+ # superseded_templates: ["TemplateName"],
2003
+ # },
2004
+ # template_v3: {
2005
+ # certificate_validity: { # required
2006
+ # renewal_period: { # required
2007
+ # period: 1, # required
2008
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
2009
+ # },
2010
+ # validity_period: { # required
2011
+ # period: 1, # required
2012
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
2013
+ # },
2014
+ # },
2015
+ # enrollment_flags: { # required
2016
+ # enable_key_reuse_on_nt_token_keyset_storage_full: false,
2017
+ # include_symmetric_algorithms: false,
2018
+ # no_security_extension: false,
2019
+ # remove_invalid_certificate_from_personal_store: false,
2020
+ # user_interaction_required: false,
2021
+ # },
2022
+ # extensions: { # required
2023
+ # application_policies: {
2024
+ # critical: false,
2025
+ # policies: [ # required
2026
+ # {
2027
+ # policy_object_identifier: "CustomObjectIdentifier",
2028
+ # policy_type: "ALL_APPLICATION_POLICIES", # accepts ALL_APPLICATION_POLICIES, ANY_PURPOSE, ATTESTATION_IDENTITY_KEY_CERTIFICATE, CERTIFICATE_REQUEST_AGENT, CLIENT_AUTHENTICATION, CODE_SIGNING, CTL_USAGE, DIGITAL_RIGHTS, DIRECTORY_SERVICE_EMAIL_REPLICATION, DISALLOWED_LIST, DNS_SERVER_TRUST, DOCUMENT_ENCRYPTION, DOCUMENT_SIGNING, DYNAMIC_CODE_GENERATOR, EARLY_LAUNCH_ANTIMALWARE_DRIVER, EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, ENCLAVE, ENCRYPTING_FILE_SYSTEM, ENDORSEMENT_KEY_CERTIFICATE, FILE_RECOVERY, HAL_EXTENSION, IP_SECURITY_END_SYSTEM, IP_SECURITY_IKE_INTERMEDIATE, IP_SECURITY_TUNNEL_TERMINATION, IP_SECURITY_USER, ISOLATED_USER_MODE, KDC_AUTHENTICATION, KERNEL_MODE_CODE_SIGNING, KEY_PACK_LICENSES, KEY_RECOVERY, KEY_RECOVERY_AGENT, LICENSE_SERVER_VERIFICATION, LIFETIME_SIGNING, MICROSOFT_PUBLISHER, MICROSOFT_TIME_STAMPING, MICROSOFT_TRUST_LIST_SIGNING, OCSP_SIGNING, OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, PLATFORM_CERTIFICATE, PREVIEW_BUILD_SIGNING, PRIVATE_KEY_ARCHIVAL, PROTECTED_PROCESS_LIGHT_VERIFICATION, PROTECTED_PROCESS_VERIFICATION, QUALIFIED_SUBORDINATION, REVOKED_LIST_SIGNER, ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION, ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION, ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL, ROOT_LIST_SIGNER, SECURE_EMAIL, SERVER_AUTHENTICATION, SMART_CARD_LOGIN, SPC_ENCRYPTED_DIGEST_RETRY_COUNT, SPC_RELAXED_PE_MARKER_CHECK, TIME_STAMPING, WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_VERIFICATION, WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION, WINDOWS_KITS_COMPONENT, WINDOWS_RT_VERIFICATION, WINDOWS_SOFTWARE_EXTENSION_VERIFICATION, WINDOWS_STORE, WINDOWS_SYSTEM_COMPONENT_VERIFICATION, WINDOWS_TCB_COMPONENT, WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT, WINDOWS_UPDATE
2029
+ # },
2030
+ # ],
2031
+ # },
2032
+ # key_usage: { # required
2033
+ # critical: false,
2034
+ # usage_flags: { # required
2035
+ # data_encipherment: false,
2036
+ # digital_signature: false,
2037
+ # key_agreement: false,
2038
+ # key_encipherment: false,
2039
+ # non_repudiation: false,
2040
+ # },
2041
+ # },
2042
+ # },
2043
+ # general_flags: { # required
2044
+ # auto_enrollment: false,
2045
+ # machine_type: false,
2046
+ # },
2047
+ # hash_algorithm: "SHA256", # required, accepts SHA256, SHA384, SHA512
2048
+ # private_key_attributes: { # required
2049
+ # algorithm: "RSA", # required, accepts RSA, ECDH_P256, ECDH_P384, ECDH_P521
2050
+ # crypto_providers: ["CryptoProvidersListMemberString"],
2051
+ # key_spec: "KEY_EXCHANGE", # required, accepts KEY_EXCHANGE, SIGNATURE
2052
+ # key_usage_property: { # required
2053
+ # property_flags: {
2054
+ # decrypt: false,
2055
+ # key_agreement: false,
2056
+ # sign: false,
2057
+ # },
2058
+ # property_type: "ALL", # accepts ALL
2059
+ # },
2060
+ # minimal_key_length: 1, # required
2061
+ # },
2062
+ # private_key_flags: { # required
2063
+ # client_version: "WINDOWS_SERVER_2008", # required, accepts WINDOWS_SERVER_2008, WINDOWS_SERVER_2008_R2, WINDOWS_SERVER_2012, WINDOWS_SERVER_2012_R2, WINDOWS_SERVER_2016
2064
+ # exportable_key: false,
2065
+ # require_alternate_signature_algorithm: false,
2066
+ # strong_key_protection_required: false,
2067
+ # },
2068
+ # subject_name_flags: { # required
2069
+ # require_common_name: false,
2070
+ # require_directory_path: false,
2071
+ # require_dns_as_cn: false,
2072
+ # require_email: false,
2073
+ # san_require_directory_guid: false,
2074
+ # san_require_dns: false,
2075
+ # san_require_domain_dns: false,
2076
+ # san_require_email: false,
2077
+ # san_require_spn: false,
2078
+ # san_require_upn: false,
2079
+ # },
2080
+ # superseded_templates: ["TemplateName"],
2081
+ # },
2082
+ # template_v4: {
2083
+ # certificate_validity: { # required
2084
+ # renewal_period: { # required
2085
+ # period: 1, # required
2086
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
2087
+ # },
2088
+ # validity_period: { # required
2089
+ # period: 1, # required
2090
+ # period_type: "HOURS", # required, accepts HOURS, DAYS, WEEKS, MONTHS, YEARS
2091
+ # },
2092
+ # },
2093
+ # enrollment_flags: { # required
2094
+ # enable_key_reuse_on_nt_token_keyset_storage_full: false,
2095
+ # include_symmetric_algorithms: false,
2096
+ # no_security_extension: false,
2097
+ # remove_invalid_certificate_from_personal_store: false,
2098
+ # user_interaction_required: false,
2099
+ # },
2100
+ # extensions: { # required
2101
+ # application_policies: {
2102
+ # critical: false,
2103
+ # policies: [ # required
2104
+ # {
2105
+ # policy_object_identifier: "CustomObjectIdentifier",
2106
+ # policy_type: "ALL_APPLICATION_POLICIES", # accepts ALL_APPLICATION_POLICIES, ANY_PURPOSE, ATTESTATION_IDENTITY_KEY_CERTIFICATE, CERTIFICATE_REQUEST_AGENT, CLIENT_AUTHENTICATION, CODE_SIGNING, CTL_USAGE, DIGITAL_RIGHTS, DIRECTORY_SERVICE_EMAIL_REPLICATION, DISALLOWED_LIST, DNS_SERVER_TRUST, DOCUMENT_ENCRYPTION, DOCUMENT_SIGNING, DYNAMIC_CODE_GENERATOR, EARLY_LAUNCH_ANTIMALWARE_DRIVER, EMBEDDED_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, ENCLAVE, ENCRYPTING_FILE_SYSTEM, ENDORSEMENT_KEY_CERTIFICATE, FILE_RECOVERY, HAL_EXTENSION, IP_SECURITY_END_SYSTEM, IP_SECURITY_IKE_INTERMEDIATE, IP_SECURITY_TUNNEL_TERMINATION, IP_SECURITY_USER, ISOLATED_USER_MODE, KDC_AUTHENTICATION, KERNEL_MODE_CODE_SIGNING, KEY_PACK_LICENSES, KEY_RECOVERY, KEY_RECOVERY_AGENT, LICENSE_SERVER_VERIFICATION, LIFETIME_SIGNING, MICROSOFT_PUBLISHER, MICROSOFT_TIME_STAMPING, MICROSOFT_TRUST_LIST_SIGNING, OCSP_SIGNING, OEM_WINDOWS_SYSTEM_COMPONENT_VERIFICATION, PLATFORM_CERTIFICATE, PREVIEW_BUILD_SIGNING, PRIVATE_KEY_ARCHIVAL, PROTECTED_PROCESS_LIGHT_VERIFICATION, PROTECTED_PROCESS_VERIFICATION, QUALIFIED_SUBORDINATION, REVOKED_LIST_SIGNER, ROOT_PROGRAM_AUTO_UPDATE_CA_REVOCATION, ROOT_PROGRAM_AUTO_UPDATE_END_REVOCATION, ROOT_PROGRAM_NO_OSCP_FAILOVER_TO_CRL, ROOT_LIST_SIGNER, SECURE_EMAIL, SERVER_AUTHENTICATION, SMART_CARD_LOGIN, SPC_ENCRYPTED_DIGEST_RETRY_COUNT, SPC_RELAXED_PE_MARKER_CHECK, TIME_STAMPING, WINDOWS_HARDWARE_DRIVER_ATTESTED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_EXTENDED_VERIFICATION, WINDOWS_HARDWARE_DRIVER_VERIFICATION, WINDOWS_HELLO_RECOVERY_KEY_ENCRYPTION, WINDOWS_KITS_COMPONENT, WINDOWS_RT_VERIFICATION, WINDOWS_SOFTWARE_EXTENSION_VERIFICATION, WINDOWS_STORE, WINDOWS_SYSTEM_COMPONENT_VERIFICATION, WINDOWS_TCB_COMPONENT, WINDOWS_THIRD_PARTY_APPLICATION_COMPONENT, WINDOWS_UPDATE
2107
+ # },
2108
+ # ],
2109
+ # },
2110
+ # key_usage: { # required
2111
+ # critical: false,
2112
+ # usage_flags: { # required
2113
+ # data_encipherment: false,
2114
+ # digital_signature: false,
2115
+ # key_agreement: false,
2116
+ # key_encipherment: false,
2117
+ # non_repudiation: false,
2118
+ # },
2119
+ # },
2120
+ # },
2121
+ # general_flags: { # required
2122
+ # auto_enrollment: false,
2123
+ # machine_type: false,
2124
+ # },
2125
+ # hash_algorithm: "SHA256", # accepts SHA256, SHA384, SHA512
2126
+ # private_key_attributes: { # required
2127
+ # algorithm: "RSA", # accepts RSA, ECDH_P256, ECDH_P384, ECDH_P521
2128
+ # crypto_providers: ["CryptoProvidersListMemberString"],
2129
+ # key_spec: "KEY_EXCHANGE", # required, accepts KEY_EXCHANGE, SIGNATURE
2130
+ # key_usage_property: {
2131
+ # property_flags: {
2132
+ # decrypt: false,
2133
+ # key_agreement: false,
2134
+ # sign: false,
2135
+ # },
2136
+ # property_type: "ALL", # accepts ALL
2137
+ # },
2138
+ # minimal_key_length: 1, # required
2139
+ # },
2140
+ # private_key_flags: { # required
2141
+ # client_version: "WINDOWS_SERVER_2012", # required, accepts WINDOWS_SERVER_2012, WINDOWS_SERVER_2012_R2, WINDOWS_SERVER_2016
2142
+ # exportable_key: false,
2143
+ # require_alternate_signature_algorithm: false,
2144
+ # require_same_key_renewal: false,
2145
+ # strong_key_protection_required: false,
2146
+ # use_legacy_provider: false,
2147
+ # },
2148
+ # subject_name_flags: { # required
2149
+ # require_common_name: false,
2150
+ # require_directory_path: false,
2151
+ # require_dns_as_cn: false,
2152
+ # require_email: false,
2153
+ # san_require_directory_guid: false,
2154
+ # san_require_dns: false,
2155
+ # san_require_domain_dns: false,
2156
+ # san_require_email: false,
2157
+ # san_require_spn: false,
2158
+ # san_require_upn: false,
2159
+ # },
2160
+ # superseded_templates: ["TemplateName"],
2161
+ # },
2162
+ # },
2163
+ # reenroll_all_certificate_holders: false,
2164
+ # template_arn: "TemplateArn", # required
2165
+ # })
2166
+ #
2167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/UpdateTemplate AWS API Documentation
2168
+ #
2169
+ # @overload update_template(params = {})
2170
+ # @param [Hash] params ({})
2171
+ def update_template(params = {}, options = {})
2172
+ req = build_request(:update_template, params)
2173
+ req.send_request(options)
2174
+ end
2175
+
2176
+ # Update a group access control entry you created using
2177
+ # [CreateTemplateGroupAccessControlEntry][1].
2178
+ #
2179
+ #
2180
+ #
2181
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplateGroupAccessControlEntry.html
2182
+ #
2183
+ # @option params [Types::AccessRights] :access_rights
2184
+ # Allow or deny permissions for an Active Directory group to enroll or
2185
+ # autoenroll certificates for a template.
2186
+ #
2187
+ # @option params [String] :group_display_name
2188
+ # Name of the Active Directory group. This name does not need to match
2189
+ # the group name in Active Directory.
2190
+ #
2191
+ # @option params [required, String] :group_security_identifier
2192
+ # Security identifier (SID) of the group object from Active Directory.
2193
+ # The SID starts with "S-".
2194
+ #
2195
+ # @option params [required, String] :template_arn
2196
+ # The Amazon Resource Name (ARN) that was returned when you called
2197
+ # [CreateTemplate][1].
2198
+ #
2199
+ #
2200
+ #
2201
+ # [1]: https://docs.aws.amazon.com/pca-connector-ad/latest/APIReference/API_CreateTemplate.html
2202
+ #
2203
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2204
+ #
2205
+ # @example Request syntax with placeholder values
2206
+ #
2207
+ # resp = client.update_template_group_access_control_entry({
2208
+ # access_rights: {
2209
+ # auto_enroll: "ALLOW", # accepts ALLOW, DENY
2210
+ # enroll: "ALLOW", # accepts ALLOW, DENY
2211
+ # },
2212
+ # group_display_name: "DisplayName",
2213
+ # group_security_identifier: "GroupSecurityIdentifier", # required
2214
+ # template_arn: "TemplateArn", # required
2215
+ # })
2216
+ #
2217
+ # @see http://docs.aws.amazon.com/goto/WebAPI/pca-connector-ad-2018-05-10/UpdateTemplateGroupAccessControlEntry AWS API Documentation
2218
+ #
2219
+ # @overload update_template_group_access_control_entry(params = {})
2220
+ # @param [Hash] params ({})
2221
+ def update_template_group_access_control_entry(params = {}, options = {})
2222
+ req = build_request(:update_template_group_access_control_entry, params)
2223
+ req.send_request(options)
2224
+ end
2225
+
2226
+ # @!endgroup
2227
+
2228
+ # @param params ({})
2229
+ # @api private
2230
+ def build_request(operation_name, params = {})
2231
+ handlers = @handlers.for(operation_name)
2232
+ context = Seahorse::Client::RequestContext.new(
2233
+ operation_name: operation_name,
2234
+ operation: config.api.operation(operation_name),
2235
+ client: self,
2236
+ params: params,
2237
+ config: config)
2238
+ context[:gem_name] = 'aws-sdk-pcaconnectorad'
2239
+ context[:gem_version] = '1.0.0'
2240
+ Seahorse::Client::Request.new(handlers, context)
2241
+ end
2242
+
2243
+ # @api private
2244
+ # @deprecated
2245
+ def waiter_names
2246
+ []
2247
+ end
2248
+
2249
+ class << self
2250
+
2251
+ # @api private
2252
+ attr_reader :identifier
2253
+
2254
+ # @api private
2255
+ def errors_module
2256
+ Errors
2257
+ end
2258
+
2259
+ end
2260
+ end
2261
+ end