Class: OCI::SecurityAttribute::SecurityAttributeClient

Inherits:
Object
  • Object
show all
Defined in:
lib/oci/security_attribute/security_attribute_client.rb

Overview

Use the Security Attributes API to manage security attributes and security attribute namespaces. For more information, see the documentation for Security Attributes and Security Attribute Namespaces.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config: nil, region: nil, endpoint: nil, signer: nil, proxy_settings: nil, retry_config: nil) ⇒ SecurityAttributeClient

Creates a new SecurityAttributeClient. Notes: If a config is not specified, then the global OCI.config will be used.

This client is not thread-safe

Either a region or an endpoint must be specified. If an endpoint is specified, it will be used instead of the region. A region may be specified in the config or via or the region parameter. If specified in both, then the region parameter will be used.

Parameters:

  • config (Config) (defaults to: nil)

    A Config object.

  • region (String) (defaults to: nil)

    A region used to determine the service endpoint. This will usually correspond to a value in Regions::REGION_ENUM, but may be an arbitrary string.

  • endpoint (String) (defaults to: nil)

    The fully qualified endpoint URL

  • signer (OCI::BaseSigner) (defaults to: nil)

    A signer implementation which can be used by this client. If this is not provided then a signer will be constructed via the provided config. One use case of this parameter is instance principals authentication, so that the instance principals signer can be provided to the client

  • proxy_settings (OCI::ApiClientProxySettings) (defaults to: nil)

    If your environment requires you to use a proxy server for outgoing HTTP requests the details for the proxy can be provided in this parameter

  • retry_config (OCI::Retry::RetryConfig) (defaults to: nil)

    The retry configuration for this service client. This represents the default retry configuration to apply across all operations. This can be overridden on a per-operation basis. The default retry configuration value is nil, which means that an operation will not perform any retries



55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 55

def initialize(config: nil, region: nil, endpoint: nil, signer: nil, proxy_settings: nil, retry_config: nil)
  # If the signer is an InstancePrincipalsSecurityTokenSigner or SecurityTokenSigner and no config was supplied (they are self-sufficient signers)
  # then create a dummy config to pass to the ApiClient constructor. If customers wish to create a client which uses instance principals
  # and has config (either populated programmatically or loaded from a file), they must construct that config themselves and then
  # pass it to this constructor.
  #
  # If there is no signer (or the signer is not an instance principals signer) and no config was supplied, this is not valid
  # so try and load the config from the default file.
  config = OCI::Config.validate_and_build_config_with_signer(config, signer)

  signer = OCI::Signer.config_file_auth_builder(config) if signer.nil?

  @api_client = OCI::ApiClient.new(config, signer, proxy_settings: proxy_settings)
  @retry_config = retry_config

  if endpoint
    @endpoint = endpoint + '/20240815'
  else
    region ||= config.region
    region ||= signer.region if signer.respond_to?(:region)
    self.region = region
  end
  logger.info "SecurityAttributeClient endpoint set to '#{@endpoint}'." if logger
end

Instance Attribute Details

#api_clientOCI::ApiClient (readonly)

Client used to make HTTP requests.

Returns:



15
16
17
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 15

def api_client
  @api_client
end

#endpointString (readonly)

Fully qualified endpoint URL

Returns:

  • (String)


19
20
21
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 19

def endpoint
  @endpoint
end

#regionString

The region, which will usually correspond to a value in Regions::REGION_ENUM.

Returns:

  • (String)


29
30
31
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 29

def region
  @region
end

#retry_configOCI::Retry::RetryConfig (readonly)

The default retry configuration to apply to all operations in this service client. This can be overridden on a per-operation basis. The default retry configuration value is nil, which means that an operation will not perform any retries



25
26
27
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 25

def retry_config
  @retry_config
end

Instance Method Details

#bulk_delete_security_attributes(bulk_delete_security_attributes_details, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use bulk_delete_security_attributes API.

Deletes the specified security attribute definitions. This operation triggers a process that removes the security attributes from all resources in your tenancy. The security attributes must be within the same security attribute namespace.

The following actions happen immediately:

After you start this operation, the state of the tag changes to DELETING, and security attribute removal from resources begins. This process can take up to 48 hours depending on the number of resources that are tagged and the regions in which those resources reside.

When all security attributes have been removed, the state changes to DELETED. You cannot restore a deleted security attribute. After the security attribute state changes to DELETED, you can use the same security attribute name again.

After you start this operation, you cannot start either the delete_security_attribute or the cascading_delete_security_attribute_namespace operation until this process completes.

In order to delete security attribute, you must first retire the security attribute. Use update_security_attribute_namespace to retire a security attribute.

Parameters:

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

Returns:

  • (Response)

    A Response object with data of type nil



137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 137

def bulk_delete_security_attributes(bulk_delete_security_attributes_details, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#bulk_delete_security_attributes.' if logger

  raise "Missing the required parameter 'bulk_delete_security_attributes_details' when calling bulk_delete_security_attributes." if bulk_delete_security_attributes_details.nil?

  path = '/securityAttributes/actions/bulkDelete'
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = @api_client.object_to_http_body(bulk_delete_security_attributes_details)

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#bulk_delete_security_attributes') do
    @api_client.call_api(
      :POST,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#bulk_edit_security_attributes(opts = {}) ⇒ Response

Note:

Click here to see an example of how to use bulk_edit_security_attributes API.

Edits the specified list of security attributes for the selected resources. This operation triggers a process that edits the attributes on all selected resources. The possible actions are:

  • Add a security attribute when it does not already exist on the resource.

  • Update the value for a security attribute when it is present on the resource.

  • Add a security attribute when it does not already exist on the resource or update the value when it is present on the resource.

  • Remove a security attribute from a resource. The security attribute is removed from the resource regardless of the value.

The edits can include a combination of operations and attributes. However, multiple operations cannot apply to the same attribute in the same request.

Parameters:

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

  • :bulk_edit_security_attribute_details (OCI::SecurityAttribute::Models::BulkEditSecurityAttributeDetails)

    The request object for bulk editing security attributes on resources in the compartment.

Returns:

  • (Response)

    A Response object with data of type nil



211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 211

def bulk_edit_security_attributes(opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#bulk_edit_security_attributes.' if logger


  path = '/securityAttributes/actions/bulkEdit'
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = @api_client.object_to_http_body(opts[:bulk_edit_security_attribute_details])

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#bulk_edit_security_attributes') do
    @api_client.call_api(
      :POST,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#cascading_delete_security_attribute_namespace(security_attribute_namespace_id, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use cascading_delete_security_attribute_namespace API.

Deletes the specified security attribute namespace. This operation triggers a process that removes all of the security attributes defined in the specified security attribute namespace from all resources in your tenancy and then deletes the security attribute namespace.

After you start the delete operation:

  • New security attribute key definitions cannot be created under the namespace.

  • The state of the security attribute namespace changes to DELETING.

  • Security attribute removal from the resources begins.

This process can take up to 48 hours depending on the number of security attributes in the namespace, the number of resources that are tagged, and the locations of the regions in which those resources reside.

After all security attributes are removed, the state changes to DELETED. You cannot restore a deleted security attribute namespace. After the deleted security attribute namespace changes its state to DELETED, you can use the name of the deleted security attribute namespace again.

After you start this operation, you cannot start either the delete_security_attribute or the bulk_delete_security_attributes operation until this process completes.

To delete a security attribute namespace, you must first retire it. Use update_security_attribute_namespace to retire a security attribute namespace.

Parameters:

  • security_attribute_namespace_id (String)

    The OCID of the security attribute namespace.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :if_match (String)

    For optimistic concurrency control. In the PUT or DELETE call for a resource, set the if-match parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

Returns:

  • (Response)

    A Response object with data of type nil



299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 299

def cascading_delete_security_attribute_namespace(security_attribute_namespace_id, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#cascading_delete_security_attribute_namespace.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling cascading_delete_security_attribute_namespace." if security_attribute_namespace_id.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}/actions/cascadeDelete'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#cascading_delete_security_attribute_namespace') do
    @api_client.call_api(
      :POST,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#change_security_attribute_namespace_compartment(security_attribute_namespace_id, change_security_attribute_namespace_compartment_details, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use change_security_attribute_namespace_compartment API.

Moves the specified security attribute namespace to the specified compartment within the same tenancy.

To move the security attribute namespace, you must have the manage security-attributes permission on both compartments. For more information about IAM policies, see Details for IAM.

Moving a security attribute namespace moves all the security attributes contained in the security attribute namespace.

Parameters:

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

  • :if_match (String)

    For optimistic concurrency control. In the PUT or DELETE call for a resource, set the if-match parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

Returns:

  • (Response)

    A Response object with data of type nil



378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 378

def change_security_attribute_namespace_compartment(security_attribute_namespace_id, change_security_attribute_namespace_compartment_details, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#change_security_attribute_namespace_compartment.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling change_security_attribute_namespace_compartment." if security_attribute_namespace_id.nil?
  raise "Missing the required parameter 'change_security_attribute_namespace_compartment_details' when calling change_security_attribute_namespace_compartment." if change_security_attribute_namespace_compartment_details.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}/actions/changeCompartment'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = @api_client.object_to_http_body(change_security_attribute_namespace_compartment_details)

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#change_security_attribute_namespace_compartment') do
    @api_client.call_api(
      :POST,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#create_security_attribute(security_attribute_namespace_id, create_security_attribute_details, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use create_security_attribute API.

Creates a new security attribute in the specified security attribute namespace.

The security attribute requires either the OCID or the name of the security attribute namespace that will contain this security attribute.

You must specify a name for the attribute, which must be unique across all attributes in the security attribute namespace and cannot be changed. The only valid characters for security attribute names are:u00A00-9, A-Z, a-z, -, _ characters. Names are case insensitive. That means, for example, "mySecurityAttribute" and "mysecurityattribute" are not allowed in the same namespace. If you specify a name that's already in use in the security attribute namespace, a 409 error is returned.

The security attribute must have a description. It does not have to be unique, and you can change it with update_security_attribute.

The security attribute must have a value type, which is specified with a validator. Security attribute can use either a static value or a list of possible values. Static values are entered by a user applying the security attribute to a resource. Lists are created by the user and the user must apply a value from the list. Lists are validated.

Parameters:

  • security_attribute_namespace_id (String)

    The OCID of the security attribute namespace.

  • create_security_attribute_details (OCI::SecurityAttribute::Models::CreateSecurityAttributeDetails)

    Request object for creating a new security attribute in the specified security attribute namespace.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

Returns:



464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 464

def create_security_attribute(security_attribute_namespace_id, create_security_attribute_details, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#create_security_attribute.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling create_security_attribute." if security_attribute_namespace_id.nil?
  raise "Missing the required parameter 'create_security_attribute_details' when calling create_security_attribute." if create_security_attribute_details.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = @api_client.object_to_http_body(create_security_attribute_details)

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#create_security_attribute') do
    @api_client.call_api(
      :POST,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'OCI::SecurityAttribute::Models::SecurityAttribute'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#create_security_attribute_namespace(create_security_attribute_namespace_details, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use create_security_attribute_namespace API.

Creates a new security attribute namespace in the specified compartment.

You must specify the compartment ID in the request object (remember that the tenancy is simply the root compartment).

You must also specify a name for the namespace, which must be unique across all namespaces in your tenancy and cannot be changed. The only valid characters for security attribute names are: u00A00-9, A-Z, a-z, -, _ characters. Names are case insensitive. That means, for example, "myNamespace" and "mynamespace" are not allowed in the same tenancy. Once you created a namespace, you cannot change the name. If you specify a name that's already in use in the tenancy, a 409 error is returned.

You must also specify a description for the namespace. It does not have to be unique, and you can change it with update_security_attribute_namespace.

Parameters:

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

Returns:



545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 545

def create_security_attribute_namespace(create_security_attribute_namespace_details, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#create_security_attribute_namespace.' if logger

  raise "Missing the required parameter 'create_security_attribute_namespace_details' when calling create_security_attribute_namespace." if create_security_attribute_namespace_details.nil?

  path = '/securityAttributeNamespaces'
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = @api_client.object_to_http_body(create_security_attribute_namespace_details)

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#create_security_attribute_namespace') do
    @api_client.call_api(
      :POST,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'OCI::SecurityAttribute::Models::SecurityAttributeNamespace'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#delete_security_attribute(security_attribute_namespace_id, security_attribute_name, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use delete_security_attribute API.

Deletes the specified security attribute. This operation triggers a process that removes the security attribute from all resources in your tenancy.

When you start the delete operation, the state of the security attribute changes to DELETING and security attribute removal from resources begins. This can take up to 48 hours depending on the number of resources that were tagged as well as the regions in which those resources reside.

When all attributes have been removed, the state changes to DELETED. You cannot restore a deleted attribute. Once the deleted attribute changes its state to DELETED, you can use the same security attribute name again.

After you start this operation, you cannot start either the bulk_delete_security_attributes or the cascading_delete_security_attribute_namespace operation until this process completes.

To delete a security attribute, you must first retire it. Use update_security_attribute to retire a security attribute.

Parameters:

  • security_attribute_namespace_id (String)

    The OCID of the security attribute namespace.

  • security_attribute_name (String)

    The name of the security attribute.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :if_match (String)

    For optimistic concurrency control. In the PUT or DELETE call for a resource, set the if-match parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

Returns:

  • (Response)

    A Response object with data of type nil



632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 632

def delete_security_attribute(security_attribute_namespace_id, security_attribute_name, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#delete_security_attribute.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling delete_security_attribute." if security_attribute_namespace_id.nil?
  raise "Missing the required parameter 'security_attribute_name' when calling delete_security_attribute." if security_attribute_name.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)
  raise "Parameter value for 'security_attribute_name' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_name)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes/{securityAttributeName}'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s).sub('{securityAttributeName}', security_attribute_name.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#delete_security_attribute') do
    @api_client.call_api(
      :DELETE,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#delete_security_attribute_namespace(security_attribute_namespace_id, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use delete_security_attribute_namespace API.

Deletes the specified security attribute namespace. Only an empty security attribute namespace can be deleted with this operation. To use this operation to delete a security attribute namespace that contains security attributes, first delete all of its security attributes. Use delete_security_attribute to delete a security attribute.

Parameters:

  • security_attribute_namespace_id (String)

    The OCID of the security attribute namespace.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :if_match (String)

    For optimistic concurrency control. In the PUT or DELETE call for a resource, set the if-match parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

Returns:

  • (Response)

    A Response object with data of type nil



709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 709

def delete_security_attribute_namespace(security_attribute_namespace_id, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#delete_security_attribute_namespace.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling delete_security_attribute_namespace." if security_attribute_namespace_id.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#delete_security_attribute_namespace') do
    @api_client.call_api(
      :DELETE,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#get_security_attribute(security_attribute_namespace_id, security_attribute_name, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use get_security_attribute API.

Gets the specified security attribute's information.

Parameters:

  • security_attribute_namespace_id (String)

    The OCID of the security attribute namespace.

  • security_attribute_name (String)

    The name of the security attribute.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

Returns:



772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 772

def get_security_attribute(security_attribute_namespace_id, security_attribute_name, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#get_security_attribute.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling get_security_attribute." if security_attribute_namespace_id.nil?
  raise "Missing the required parameter 'security_attribute_name' when calling get_security_attribute." if security_attribute_name.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)
  raise "Parameter value for 'security_attribute_name' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_name)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes/{securityAttributeName}'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s).sub('{securityAttributeName}', security_attribute_name.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#get_security_attribute') do
    @api_client.call_api(
      :GET,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'OCI::SecurityAttribute::Models::SecurityAttribute'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#get_security_attribute_namespace(security_attribute_namespace_id, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use get_security_attribute_namespace API.

Gets the specified security attribute namespace's information.

Parameters:

  • security_attribute_namespace_id (String)

    The OCID of the security attribute namespace.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

Returns:



834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 834

def get_security_attribute_namespace(security_attribute_namespace_id, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#get_security_attribute_namespace.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling get_security_attribute_namespace." if security_attribute_namespace_id.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#get_security_attribute_namespace') do
    @api_client.call_api(
      :GET,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'OCI::SecurityAttribute::Models::SecurityAttributeNamespace'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#get_security_attribute_work_request(work_request_id, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use get_security_attribute_work_request API.

Gets details on a specified work request. The workRequestID is returned in the opc-work-request-id header for any asynchronous operation in security attributes service.

Parameters:

  • work_request_id (String)

    The OCID of the work request.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

Returns:



894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 894

def get_security_attribute_work_request(work_request_id, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#get_security_attribute_work_request.' if logger

  raise "Missing the required parameter 'work_request_id' when calling get_security_attribute_work_request." if work_request_id.nil?
  raise "Parameter value for 'work_request_id' must not be blank" if OCI::Internal::Util.blank_string?(work_request_id)

  path = '/securityAttributeWorkRequests/{workRequestId}'.sub('{workRequestId}', work_request_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#get_security_attribute_work_request') do
    @api_client.call_api(
      :GET,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'OCI::SecurityAttribute::Models::SecurityAttributeWorkRequest'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#list_security_attribute_namespaces(opts = {}) ⇒ Response

Note:

Click here to see an example of how to use list_security_attribute_namespaces API.

Lists the security attribute namespaces in the specified compartment.

Parameters:

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :compartment_id (String)

    The OCID of the compartment in which to list resources.

  • :page (String)

    The value of the opc-next-page response header from the previous "List" call.

  • :limit (Integer)

    The maximum number of items to return in a paginated "List" call.

  • :sort_order (String)

    The sort order to use, either ascending (ASC) or descending (DESC).

  • :sort_by (String)

    The field to sort by. You can provide one sort order (sortOrder). Default order for TIMECREATED is descending. Default order for NAME is ascending. The NAME sort order is case sensitive.

    Note: In general, some "List" operations (for example, ListInstances) let you optionally filter by Availability Domain if the scope of the resource type is within a single Availability Domain. If you call one of these "List" operations without specifying an Availability Domain, the resources are grouped by Availability Domain, then sorted.

    Allowed values are: TIMECREATED, NAME

  • :name (String)

    A filter to return only resources that match the entire display name given.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :compartment_id_in_subtree (BOOLEAN)

    An optional boolean parameter indicating whether to retrieve all security attribute namespaces in subcompartments. If this parameter is not specified, only the namespaces defined in the specified compartment are retrieved.

  • :lifecycle_state (String)

    A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.

Returns:



974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 974

def list_security_attribute_namespaces(opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#list_security_attribute_namespaces.' if logger


  if opts[:sort_order] && !OCI::SecurityAttribute::Models::SORT_ORDER_ENUM.include?(opts[:sort_order])
    raise 'Invalid value for "sort_order", must be one of the values in OCI::SecurityAttribute::Models::SORT_ORDER_ENUM.'
  end

  if opts[:sort_by] && !%w[TIMECREATED NAME].include?(opts[:sort_by])
    raise 'Invalid value for "sort_by", must be one of TIMECREATED, NAME.'
  end

  if opts[:lifecycle_state] && !OCI::SecurityAttribute::Models::SecurityAttributeNamespace::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
    raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::SecurityAttribute::Models::SecurityAttributeNamespace::LIFECYCLE_STATE_ENUM.'
  end

  path = '/securityAttributeNamespaces'
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}
  query_params[:compartmentId] = opts[:compartment_id] if opts[:compartment_id]
  query_params[:page] = opts[:page] if opts[:page]
  query_params[:limit] = opts[:limit] if opts[:limit]
  query_params[:sortOrder] = opts[:sort_order] if opts[:sort_order]
  query_params[:sortBy] = opts[:sort_by] if opts[:sort_by]
  query_params[:name] = opts[:name] if opts[:name]
  query_params[:compartmentIdInSubtree] = opts[:compartment_id_in_subtree] if !opts[:compartment_id_in_subtree].nil?
  query_params[:lifecycleState] = opts[:lifecycle_state] if opts[:lifecycle_state]

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#list_security_attribute_namespaces') do
    @api_client.call_api(
      :GET,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'Array<OCI::SecurityAttribute::Models::SecurityAttributeNamespaceSummary>'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#list_security_attribute_work_request_errors(work_request_id, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use list_security_attribute_work_request_errors API.

Gets the errors for a work request.

Parameters:

  • work_request_id (String)

    The OCID of the work request.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :page (String)

    The value of the opc-next-page response header from the previous "List" call.

  • :limit (Integer)

    The maximum number of items to return in a paginated "List" call.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

Returns:



1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 1055

def list_security_attribute_work_request_errors(work_request_id, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#list_security_attribute_work_request_errors.' if logger

  raise "Missing the required parameter 'work_request_id' when calling list_security_attribute_work_request_errors." if work_request_id.nil?
  raise "Parameter value for 'work_request_id' must not be blank" if OCI::Internal::Util.blank_string?(work_request_id)

  path = '/securityAttributeWorkRequests/{workRequestId}/errors'.sub('{workRequestId}', work_request_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}
  query_params[:page] = opts[:page] if opts[:page]
  query_params[:limit] = opts[:limit] if opts[:limit]

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#list_security_attribute_work_request_errors') do
    @api_client.call_api(
      :GET,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'Array<OCI::SecurityAttribute::Models::SecurityAttributeWorkRequestErrorSummary>'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#list_security_attribute_work_request_logs(work_request_id, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use list_security_attribute_work_request_logs API.

Gets the logs for a work request.

Parameters:

  • work_request_id (String)

    The OCID of the work request.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :page (String)

    The value of the opc-next-page response header from the previous "List" call.

  • :limit (Integer)

    The maximum number of items to return in a paginated "List" call.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

Returns:



1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 1120

def list_security_attribute_work_request_logs(work_request_id, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#list_security_attribute_work_request_logs.' if logger

  raise "Missing the required parameter 'work_request_id' when calling list_security_attribute_work_request_logs." if work_request_id.nil?
  raise "Parameter value for 'work_request_id' must not be blank" if OCI::Internal::Util.blank_string?(work_request_id)

  path = '/securityAttributeWorkRequests/{workRequestId}/logs'.sub('{workRequestId}', work_request_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}
  query_params[:page] = opts[:page] if opts[:page]
  query_params[:limit] = opts[:limit] if opts[:limit]

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#list_security_attribute_work_request_logs') do
    @api_client.call_api(
      :GET,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'Array<OCI::SecurityAttribute::Models::SecurityAttributeWorkRequestLogSummary>'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#list_security_attribute_work_requests(opts = {}) ⇒ Response

Note:

Click here to see an example of how to use list_security_attribute_work_requests API.

Lists the security attribute work requests in compartment.

Parameters:

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :compartment_id (String)

    The OCID of the compartment in which to list resources.

  • :page (String)

    The value of the opc-next-page response header from the previous "List" call.

  • :limit (Integer)

    The maximum number of items to return in a paginated "List" call.

  • :resource_identifier (String)

    The identifier of the resource the work request affects.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

Returns:



1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 1186

def list_security_attribute_work_requests(opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#list_security_attribute_work_requests.' if logger


  path = '/securityAttributeWorkRequests/'
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}
  query_params[:compartmentId] = opts[:compartment_id] if opts[:compartment_id]
  query_params[:page] = opts[:page] if opts[:page]
  query_params[:limit] = opts[:limit] if opts[:limit]
  query_params[:resourceIdentifier] = opts[:resource_identifier] if opts[:resource_identifier]

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#list_security_attribute_work_requests') do
    @api_client.call_api(
      :GET,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'Array<OCI::SecurityAttribute::Models::SecurityAttributeWorkRequestSummary>'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#list_security_attributes(security_attribute_namespace_id, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use list_security_attributes API.

Lists the security attributes in the specified namespace.

Parameters:

  • security_attribute_namespace_id (String)

    The OCID of the security attribute namespace.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :page (String)

    The value of the opc-next-page response header from the previous "List" call.

  • :limit (Integer)

    The maximum number of items to return in a paginated "List" call.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :lifecycle_state (String)

    A filter to only return resources that match the given lifecycle state. The state value is case-insensitive.

Returns:



1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 1254

def list_security_attributes(security_attribute_namespace_id, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#list_security_attributes.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling list_security_attributes." if security_attribute_namespace_id.nil?

  if opts[:lifecycle_state] && !OCI::SecurityAttribute::Models::SecurityAttribute::LIFECYCLE_STATE_ENUM.include?(opts[:lifecycle_state])
    raise 'Invalid value for "lifecycle_state", must be one of the values in OCI::SecurityAttribute::Models::SecurityAttribute::LIFECYCLE_STATE_ENUM.'
  end
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}
  query_params[:page] = opts[:page] if opts[:page]
  query_params[:limit] = opts[:limit] if opts[:limit]
  query_params[:lifecycleState] = opts[:lifecycle_state] if opts[:lifecycle_state]

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  # rubocop:enable Style/NegatedIf

  post_body = nil

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#list_security_attributes') do
    @api_client.call_api(
      :GET,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'Array<OCI::SecurityAttribute::Models::SecurityAttributeSummary>'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#loggerLogger

Returns The logger for this client. May be nil.

Returns:

  • (Logger)

    The logger for this client. May be nil.



94
95
96
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 94

def logger
  @api_client.config.logger
end

#update_security_attribute(security_attribute_namespace_id, security_attribute_name, update_security_attribute_details, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use update_security_attribute API.

Updates the specified security attribute. You can only update description, and isRetired.

Parameters:

  • security_attribute_namespace_id (String)

    The OCID of the security attribute namespace.

  • security_attribute_name (String)

    The name of the security attribute.

  • update_security_attribute_details (OCI::SecurityAttribute::Models::UpdateSecurityAttributeDetails)

    Request object for updating a security attribute.

  • opts (Hash) (defaults to: {})

    the optional parameters

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :if_match (String)

    For optimistic concurrency control. In the PUT or DELETE call for a resource, set the if-match parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

Returns:



1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 1335

def update_security_attribute(security_attribute_namespace_id, security_attribute_name, update_security_attribute_details, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#update_security_attribute.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling update_security_attribute." if security_attribute_namespace_id.nil?
  raise "Missing the required parameter 'security_attribute_name' when calling update_security_attribute." if security_attribute_name.nil?
  raise "Missing the required parameter 'update_security_attribute_details' when calling update_security_attribute." if update_security_attribute_details.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)
  raise "Parameter value for 'security_attribute_name' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_name)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}/securityAttributes/{securityAttributeName}'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s).sub('{securityAttributeName}', security_attribute_name.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = @api_client.object_to_http_body(update_security_attribute_details)

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#update_security_attribute') do
    @api_client.call_api(
      :PUT,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'OCI::SecurityAttribute::Models::SecurityAttribute'
    )
  end
  # rubocop:enable Metrics/BlockLength
end

#update_security_attribute_namespace(security_attribute_namespace_id, update_security_attribute_namespace_details, opts = {}) ⇒ Response

Note:

Click here to see an example of how to use update_security_attribute_namespace API.

Updates the specified security attribute namespace. You can't update the namespace name.

Updating isRetired to 'true' retires the namespace and all the security attributes in the namespace. Reactivating a namespace (changing isRetired from 'true' to 'false') does not reactivate security attributes. To reactivate the security attributes, you must reactivate each one individually after you reactivate the namespace, using #update_security_attribute update_security_attribute}. For more information about retiring security attribute namespaces, see {Managing Security Attribute Namespaces.

You can't add a namespace with the same name as a retired namespace in the same tenancy.

Parameters:

Options Hash (opts):

  • :retry_config (OCI::Retry::RetryConfig)

    The retry configuration to apply to this operation. If no key is provided then the service-level retry configuration defined by #retry_config will be used. If an explicit nil value is provided then the operation will not retry

  • :if_match (String)

    For optimistic concurrency control. In the PUT or DELETE call for a resource, set the if-match parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

  • :opc_request_id (String)

    Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a particular request, please provide the request ID. The only valid characters for request IDs are letters, numbers, underscore, and dash.

  • :opc_retry_token (String)

    A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of running that same action again. Retry tokens expire after 24 hours, but can be invalidated before then due to conflicting operations. For example, if a resource has been deleted and removed from the system, then a retry of the original creation request might be rejected.

Returns:



1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
# File 'lib/oci/security_attribute/security_attribute_client.rb', line 1421

def update_security_attribute_namespace(security_attribute_namespace_id, update_security_attribute_namespace_details, opts = {})
  logger.debug 'Calling operation SecurityAttributeClient#update_security_attribute_namespace.' if logger

  raise "Missing the required parameter 'security_attribute_namespace_id' when calling update_security_attribute_namespace." if security_attribute_namespace_id.nil?
  raise "Missing the required parameter 'update_security_attribute_namespace_details' when calling update_security_attribute_namespace." if update_security_attribute_namespace_details.nil?
  raise "Parameter value for 'security_attribute_namespace_id' must not be blank" if OCI::Internal::Util.blank_string?(security_attribute_namespace_id)

  path = '/securityAttributeNamespaces/{securityAttributeNamespaceId}'.sub('{securityAttributeNamespaceId}', security_attribute_namespace_id.to_s)
  operation_signing_strategy = :standard

  # rubocop:disable Style/NegatedIf
  # Query Params
  query_params = {}

  # Header Params
  header_params = {}
  header_params[:accept] = 'application/json'
  header_params[:'content-type'] = 'application/json'
  header_params[:'if-match'] = opts[:if_match] if opts[:if_match]
  header_params[:'opc-request-id'] = opts[:opc_request_id] if opts[:opc_request_id]
  header_params[:'opc-retry-token'] = opts[:opc_retry_token] if opts[:opc_retry_token]
  # rubocop:enable Style/NegatedIf
  header_params[:'opc-retry-token'] ||= OCI::Retry.generate_opc_retry_token

  post_body = @api_client.object_to_http_body(update_security_attribute_namespace_details)

  # rubocop:disable Metrics/BlockLength
  OCI::Retry.make_retrying_call(applicable_retry_config(opts), call_name: 'SecurityAttributeClient#update_security_attribute_namespace') do
    @api_client.call_api(
      :PUT,
      path,
      endpoint,
      header_params: header_params,
      query_params: query_params,
      operation_signing_strategy: operation_signing_strategy,
      body: post_body,
      return_type: 'OCI::SecurityAttribute::Models::SecurityAttributeNamespace'
    )
  end
  # rubocop:enable Metrics/BlockLength
end