Class: Aws::AuditManager::Client

Inherits:
Seahorse::Client::Base show all
Includes:
ClientStubs
Defined in:
gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb

Overview

An API client for AuditManager. To construct a client, you need to configure a :region and :credentials.

client = Aws::AuditManager::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::SharedCredentials - Used for loading static credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    • Aws::AssumeRoleWebIdentityCredentials - Used when you need to assume a role after providing credentials via the web.

    • Aws::SSOCredentials - Used for loading credentials from AWS SSO using an access token generated from aws login.

    • Aws::ProcessCredentials - Used for loading credentials from a process that outputs to stdout.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::ECSCredentials - Used for loading credentials from instances running in ECS.

    • Aws::CognitoIdentityCredentials - Used for loading credentials from the Cognito Identity service.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]
    • The :access_key_id, :secret_access_key, :session_token, and :account_id options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
    • ~/.aws/credentials
    • ~/.aws/config
    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentials or Aws::ECSCredentials to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED'] to true.
  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :disable_request_compression (Boolean) — default: false

    When set to 'true' the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the :endpoint option directly. This is normally constructed from the :region option. Configuring :endpoint is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default :sigv4a_signing_region_set is searched for in the following locations:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses NoOpTelemetryProvider which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the opentelemetry-sdk gem and then, pass in an instance of a Aws::Telemetry::OTelProvider for telemetry provider.
  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an instance of any one of the following classes:

    • Aws::StaticTokenProvider - Used for configuring static, non-refreshing tokens.

    • Aws::SSOTokenProvider - Used for loading tokens from AWS SSO using an access token generated from aws login.

    When :token_provider is not configured directly, the Aws::TokenProviderChain will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to true, dualstack enabled endpoints (with .aws TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to true, fips compatible endpoints will be used if available. When a fips region is used, the region is normalized and this config is set to true.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::AuditManager::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to #resolve_endpoint(parameters) where parameters is a Struct similar to Aws::AuditManager::EndpointParameters.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a content-length).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.



446
447
448
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 446

def initialize(*args)
  super
end

Instance Method Details

#associate_assessment_report_evidence_folder(params = {}) ⇒ Struct

Associates an evidence folder to an assessment report in an Audit Manager assessment.

Examples:

Request syntax with placeholder values


resp = client.associate_assessment_report_evidence_folder({
  assessment_id: "UUID", # required
  evidence_folder_id: "UUID", # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :evidence_folder_id (required, String)

    The identifier for the folder that the evidence is stored in.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



474
475
476
477
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 474

def associate_assessment_report_evidence_folder(params = {}, options = {})
  req = build_request(:associate_assessment_report_evidence_folder, params)
  req.send_request(options)
end

#batch_associate_assessment_report_evidence(params = {}) ⇒ Types::BatchAssociateAssessmentReportEvidenceResponse

Associates a list of evidence to an assessment report in an Audit Manager assessment.

Examples:

Request syntax with placeholder values


resp = client.batch_associate_assessment_report_evidence({
  assessment_id: "UUID", # required
  evidence_folder_id: "UUID", # required
  evidence_ids: ["UUID"], # required
})

Response structure


resp.evidence_ids #=> Array
resp.evidence_ids[0] #=> String
resp.errors #=> Array
resp.errors[0].evidence_id #=> String
resp.errors[0].error_code #=> String
resp.errors[0].error_message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :evidence_folder_id (required, String)

    The identifier for the folder that the evidence is stored in.

  • :evidence_ids (required, Array<String>)

    The list of evidence identifiers.

Returns:

See Also:



517
518
519
520
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 517

def batch_associate_assessment_report_evidence(params = {}, options = {})
  req = build_request(:batch_associate_assessment_report_evidence, params)
  req.send_request(options)
end

#batch_create_delegation_by_assessment(params = {}) ⇒ Types::BatchCreateDelegationByAssessmentResponse

Creates a batch of delegations for an assessment in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.batch_create_delegation_by_assessment({
  create_delegation_requests: [ # required
    {
      comment: "DelegationComment",
      control_set_id: "ControlSetId",
      role_arn: "IamArn",
      role_type: "PROCESS_OWNER", # accepts PROCESS_OWNER, RESOURCE_OWNER
    },
  ],
  assessment_id: "UUID", # required
})

Response structure


resp.delegations #=> Array
resp.delegations[0].id #=> String
resp.delegations[0].assessment_name #=> String
resp.delegations[0].assessment_id #=> String
resp.delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.delegations[0].role_arn #=> String
resp.delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.delegations[0].creation_time #=> Time
resp.delegations[0].last_updated #=> Time
resp.delegations[0].control_set_id #=> String
resp.delegations[0].comment #=> String
resp.delegations[0].created_by #=> String
resp.errors #=> Array
resp.errors[0].create_delegation_request.comment #=> String
resp.errors[0].create_delegation_request.control_set_id #=> String
resp.errors[0].create_delegation_request.role_arn #=> String
resp.errors[0].create_delegation_request.role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.errors[0].error_code #=> String
resp.errors[0].error_message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :create_delegation_requests (required, Array<Types::CreateDelegationRequest>)

    The API request to batch create delegations in Audit Manager.

  • :assessment_id (required, String)

    The identifier for the assessment.

Returns:

See Also:



575
576
577
578
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 575

def batch_create_delegation_by_assessment(params = {}, options = {})
  req = build_request(:batch_create_delegation_by_assessment, params)
  req.send_request(options)
end

#batch_delete_delegation_by_assessment(params = {}) ⇒ Types::BatchDeleteDelegationByAssessmentResponse

Deletes a batch of delegations for an assessment in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.batch_delete_delegation_by_assessment({
  delegation_ids: ["UUID"], # required
  assessment_id: "UUID", # required
})

Response structure


resp.errors #=> Array
resp.errors[0].delegation_id #=> String
resp.errors[0].error_code #=> String
resp.errors[0].error_message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :delegation_ids (required, Array<String>)

    The identifiers for the delegations.

  • :assessment_id (required, String)

    The identifier for the assessment.

Returns:

See Also:



610
611
612
613
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 610

def batch_delete_delegation_by_assessment(params = {}, options = {})
  req = build_request(:batch_delete_delegation_by_assessment, params)
  req.send_request(options)
end

#batch_disassociate_assessment_report_evidence(params = {}) ⇒ Types::BatchDisassociateAssessmentReportEvidenceResponse

Disassociates a list of evidence from an assessment report in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.batch_disassociate_assessment_report_evidence({
  assessment_id: "UUID", # required
  evidence_folder_id: "UUID", # required
  evidence_ids: ["UUID"], # required
})

Response structure


resp.evidence_ids #=> Array
resp.evidence_ids[0] #=> String
resp.errors #=> Array
resp.errors[0].evidence_id #=> String
resp.errors[0].error_code #=> String
resp.errors[0].error_message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :evidence_folder_id (required, String)

    The identifier for the folder that the evidence is stored in.

  • :evidence_ids (required, Array<String>)

    The list of evidence identifiers.

Returns:

See Also:



653
654
655
656
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 653

def batch_disassociate_assessment_report_evidence(params = {}, options = {})
  req = build_request(:batch_disassociate_assessment_report_evidence, params)
  req.send_request(options)
end

#batch_import_evidence_to_assessment_control(params = {}) ⇒ Types::BatchImportEvidenceToAssessmentControlResponse

Adds one or more pieces of evidence to a control in an Audit Manager assessment.

You can import manual evidence from any S3 bucket by specifying the S3 URI of the object. You can also upload a file from your browser, or enter plain text in response to a risk assessment question.

The following restrictions apply to this action:

  • manualEvidence can be only one of the following: evidenceFileName, s3ResourcePath, or textResponse

  • Maximum size of an individual evidence file: 100 MB

  • Number of daily manual evidence uploads per control: 100

  • Supported file formats: See Supported file types for manual evidence in the Audit Manager User Guide

For more information about Audit Manager service restrictions, see Quotas and restrictions for Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.batch_import_evidence_to_assessment_control({
  assessment_id: "UUID", # required
  control_set_id: "ControlSetId", # required
  control_id: "UUID", # required
  manual_evidence: [ # required
    {
      s3_resource_path: "S3Url",
      text_response: "ManualEvidenceTextResponse",
      evidence_file_name: "ManualEvidenceLocalFileName",
    },
  ],
})

Response structure


resp.errors #=> Array
resp.errors[0].manual_evidence.s3_resource_path #=> String
resp.errors[0].manual_evidence.text_response #=> String
resp.errors[0].manual_evidence.evidence_file_name #=> String
resp.errors[0].error_code #=> String
resp.errors[0].error_message #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :control_set_id (required, String)

    The identifier for the control set.

  • :control_id (required, String)

    The identifier for the control.

  • :manual_evidence (required, Array<Types::ManualEvidence>)

    The list of manual evidence objects.

Returns:

See Also:



729
730
731
732
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 729

def batch_import_evidence_to_assessment_control(params = {}, options = {})
  req = build_request(:batch_import_evidence_to_assessment_control, params)
  req.send_request(options)
end

#create_assessment(params = {}) ⇒ Types::CreateAssessmentResponse

Creates an assessment in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.create_assessment({
  name: "AssessmentName", # required
  description: "AssessmentDescription",
  assessment_reports_destination: { # required
    destination_type: "S3", # accepts S3
    destination: "S3Url",
  },
  scope: { # required
    aws_accounts: [
      {
        id: "AccountId",
        email_address: "EmailAddress",
        name: "AccountName",
      },
    ],
    aws_services: [
      {
        service_name: "AWSServiceName",
      },
    ],
  },
  roles: [ # required
    {
      role_type: "PROCESS_OWNER", # required, accepts PROCESS_OWNER, RESOURCE_OWNER
      role_arn: "IamArn", # required
    },
  ],
  framework_id: "UUID", # required
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.assessment.arn #=> String
resp.assessment..id #=> String
resp.assessment..email_address #=> String
resp.assessment..name #=> String
resp.assessment..name #=> String
resp.assessment..id #=> String
resp.assessment..description #=> String
resp.assessment..compliance_type #=> String
resp.assessment..status #=> String, one of "ACTIVE", "INACTIVE"
resp.assessment..assessment_reports_destination.destination_type #=> String, one of "S3"
resp.assessment..assessment_reports_destination.destination #=> String
resp.assessment..scope.aws_accounts #=> Array
resp.assessment..scope.aws_accounts[0].id #=> String
resp.assessment..scope.aws_accounts[0].email_address #=> String
resp.assessment..scope.aws_accounts[0].name #=> String
resp.assessment..scope.aws_services #=> Array
resp.assessment..scope.aws_services[0].service_name #=> String
resp.assessment..roles #=> Array
resp.assessment..roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment..roles[0].role_arn #=> String
resp.assessment..delegations #=> Array
resp.assessment..delegations[0].id #=> String
resp.assessment..delegations[0].assessment_name #=> String
resp.assessment..delegations[0].assessment_id #=> String
resp.assessment..delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.assessment..delegations[0].role_arn #=> String
resp.assessment..delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment..delegations[0].creation_time #=> Time
resp.assessment..delegations[0].last_updated #=> Time
resp.assessment..delegations[0].control_set_id #=> String
resp.assessment..delegations[0].comment #=> String
resp.assessment..delegations[0].created_by #=> String
resp.assessment..creation_time #=> Time
resp.assessment..last_updated #=> Time
resp.assessment.framework.id #=> String
resp.assessment.framework.arn #=> String
resp.assessment.framework..name #=> String
resp.assessment.framework..description #=> String
resp.assessment.framework.. #=> String
resp.assessment.framework..compliance_type #=> String
resp.assessment.framework.control_sets #=> Array
resp.assessment.framework.control_sets[0].id #=> String
resp.assessment.framework.control_sets[0].description #=> String
resp.assessment.framework.control_sets[0].status #=> String, one of "ACTIVE", "UNDER_REVIEW", "REVIEWED"
resp.assessment.framework.control_sets[0].roles #=> Array
resp.assessment.framework.control_sets[0].roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment.framework.control_sets[0].roles[0].role_arn #=> String
resp.assessment.framework.control_sets[0].controls #=> Array
resp.assessment.framework.control_sets[0].controls[0].id #=> String
resp.assessment.framework.control_sets[0].controls[0].name #=> String
resp.assessment.framework.control_sets[0].controls[0].description #=> String
resp.assessment.framework.control_sets[0].controls[0].status #=> String, one of "UNDER_REVIEW", "REVIEWED", "INACTIVE"
resp.assessment.framework.control_sets[0].controls[0].response #=> String, one of "MANUAL", "AUTOMATE", "DEFER", "IGNORE"
resp.assessment.framework.control_sets[0].controls[0].comments #=> Array
resp.assessment.framework.control_sets[0].controls[0].comments[0].author_name #=> String
resp.assessment.framework.control_sets[0].controls[0].comments[0].comment_body #=> String
resp.assessment.framework.control_sets[0].controls[0].comments[0].posted_date #=> Time
resp.assessment.framework.control_sets[0].controls[0].evidence_sources #=> Array
resp.assessment.framework.control_sets[0].controls[0].evidence_sources[0] #=> String
resp.assessment.framework.control_sets[0].controls[0].evidence_count #=> Integer
resp.assessment.framework.control_sets[0].controls[0].assessment_report_evidence_count #=> Integer
resp.assessment.framework.control_sets[0].delegations #=> Array
resp.assessment.framework.control_sets[0].delegations[0].id #=> String
resp.assessment.framework.control_sets[0].delegations[0].assessment_name #=> String
resp.assessment.framework.control_sets[0].delegations[0].assessment_id #=> String
resp.assessment.framework.control_sets[0].delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.assessment.framework.control_sets[0].delegations[0].role_arn #=> String
resp.assessment.framework.control_sets[0].delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment.framework.control_sets[0].delegations[0].creation_time #=> Time
resp.assessment.framework.control_sets[0].delegations[0].last_updated #=> Time
resp.assessment.framework.control_sets[0].delegations[0].control_set_id #=> String
resp.assessment.framework.control_sets[0].delegations[0].comment #=> String
resp.assessment.framework.control_sets[0].delegations[0].created_by #=> String
resp.assessment.framework.control_sets[0].system_evidence_count #=> Integer
resp.assessment.framework.control_sets[0].manual_evidence_count #=> Integer
resp.assessment.tags #=> Hash
resp.assessment.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the assessment to be created.

  • :description (String)

    The optional description of the assessment to be created.

  • :assessment_reports_destination (required, Types::AssessmentReportsDestination)

    The assessment report storage destination for the assessment that's being created.

  • :scope (required, Types::Scope)

    The wrapper that contains the Amazon Web Services accounts that are in scope for the assessment.

    You no longer need to specify which Amazon Web Services are in scope when you create or update an assessment. Audit Manager infers the services in scope by examining your assessment controls and their data sources, and then mapping this information to the relevant Amazon Web Services.

    If an underlying data source changes for your assessment, we automatically update the services scope as needed to reflect the correct Amazon Web Services. This ensures that your assessment collects accurate and comprehensive evidence about all of the relevant services in your AWS environment.

  • :roles (required, Array<Types::Role>)

    The list of roles for the assessment.

  • :framework_id (required, String)

    The identifier for the framework that the assessment will be created from.

  • :tags (Hash<String,String>)

    The tags that are associated with the assessment.

Returns:

See Also:



897
898
899
900
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 897

def create_assessment(params = {}, options = {})
  req = build_request(:create_assessment, params)
  req.send_request(options)
end

#create_assessment_framework(params = {}) ⇒ Types::CreateAssessmentFrameworkResponse

Creates a custom framework in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.create_assessment_framework({
  name: "FrameworkName", # required
  description: "FrameworkDescription",
  compliance_type: "ComplianceType",
  control_sets: [ # required
    {
      name: "ControlSetName", # required
      controls: [
        {
          id: "UUID", # required
        },
      ],
    },
  ],
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.framework.arn #=> String
resp.framework.id #=> String
resp.framework.name #=> String
resp.framework.type #=> String, one of "Standard", "Custom"
resp.framework.compliance_type #=> String
resp.framework.description #=> String
resp.framework. #=> String
resp.framework.control_sources #=> String
resp.framework.control_sets #=> Array
resp.framework.control_sets[0].id #=> String
resp.framework.control_sets[0].name #=> String
resp.framework.control_sets[0].controls #=> Array
resp.framework.control_sets[0].controls[0].arn #=> String
resp.framework.control_sets[0].controls[0].id #=> String
resp.framework.control_sets[0].controls[0].type #=> String, one of "Standard", "Custom", "Core"
resp.framework.control_sets[0].controls[0].name #=> String
resp.framework.control_sets[0].controls[0].description #=> String
resp.framework.control_sets[0].controls[0].testing_information #=> String
resp.framework.control_sets[0].controls[0].action_plan_title #=> String
resp.framework.control_sets[0].controls[0].action_plan_instructions #=> String
resp.framework.control_sets[0].controls[0].control_sources #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources #=> Array
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_id #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_name #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_description #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_set_up_option #=> String, one of "System_Controls_Mapping", "Procedural_Controls_Mapping"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_type #=> String, one of "AWS_Cloudtrail", "AWS_Config", "AWS_Security_Hub", "AWS_API_Call", "MANUAL", "Common_Control", "Core_Control"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST", "UPLOAD_FILE", "INPUT_TEXT"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_value #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_frequency #=> String, one of "DAILY", "WEEKLY", "MONTHLY"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].troubleshooting_text #=> String
resp.framework.control_sets[0].controls[0].created_at #=> Time
resp.framework.control_sets[0].controls[0].last_updated_at #=> Time
resp.framework.control_sets[0].controls[0].created_by #=> String
resp.framework.control_sets[0].controls[0].last_updated_by #=> String
resp.framework.control_sets[0].controls[0].tags #=> Hash
resp.framework.control_sets[0].controls[0].tags["TagKey"] #=> String
resp.framework.control_sets[0].controls[0].state #=> String, one of "ACTIVE", "END_OF_SUPPORT"
resp.framework.created_at #=> Time
resp.framework.last_updated_at #=> Time
resp.framework.created_by #=> String
resp.framework.last_updated_by #=> String
resp.framework.tags #=> Hash
resp.framework.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the new custom framework.

  • :description (String)

    An optional description for the new custom framework.

  • :compliance_type (String)

    The compliance type that the new custom framework supports, such as CIS or HIPAA.

  • :control_sets (required, Array<Types::CreateAssessmentFrameworkControlSet>)

    The control sets that are associated with the framework.

  • :tags (Hash<String,String>)

    The tags that are associated with the framework.

Returns:

See Also:



996
997
998
999
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 996

def create_assessment_framework(params = {}, options = {})
  req = build_request(:create_assessment_framework, params)
  req.send_request(options)
end

#create_assessment_report(params = {}) ⇒ Types::CreateAssessmentReportResponse

Creates an assessment report for the specified assessment.

Examples:

Request syntax with placeholder values


resp = client.create_assessment_report({
  name: "AssessmentReportName", # required
  description: "AssessmentReportDescription",
  assessment_id: "UUID", # required
  query_statement: "QueryStatement",
})

Response structure


resp.assessment_report.id #=> String
resp.assessment_report.name #=> String
resp.assessment_report.description #=> String
resp.assessment_report. #=> String
resp.assessment_report.assessment_id #=> String
resp.assessment_report.assessment_name #=> String
resp.assessment_report.author #=> String
resp.assessment_report.status #=> String, one of "COMPLETE", "IN_PROGRESS", "FAILED"
resp.assessment_report.creation_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the new assessment report.

  • :description (String)

    The description of the assessment report.

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :query_statement (String)

    A SQL statement that represents an evidence finder query.

    Provide this parameter when you want to generate an assessment report from the results of an evidence finder search query. When you use this parameter, Audit Manager generates a one-time report using only the evidence from the query output. This report does not include any assessment evidence that was manually added to a report using the console, or associated with a report using the API.

    To use this parameter, the enablementStatus of evidence finder must be ENABLED.

    For examples and help resolving queryStatement validation exceptions, see Troubleshooting evidence finder issues in the Audit Manager User Guide.

Returns:

See Also:



1065
1066
1067
1068
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1065

def create_assessment_report(params = {}, options = {})
  req = build_request(:create_assessment_report, params)
  req.send_request(options)
end

#create_control(params = {}) ⇒ Types::CreateControlResponse

Creates a new custom control in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.create_control({
  name: "ControlName", # required
  description: "ControlDescription",
  testing_information: "TestingInformation",
  action_plan_title: "ActionPlanTitle",
  action_plan_instructions: "ActionPlanInstructions",
  control_mapping_sources: [ # required
    {
      source_name: "SourceName",
      source_description: "SourceDescription",
      source_set_up_option: "System_Controls_Mapping", # accepts System_Controls_Mapping, Procedural_Controls_Mapping
      source_type: "AWS_Cloudtrail", # accepts AWS_Cloudtrail, AWS_Config, AWS_Security_Hub, AWS_API_Call, MANUAL, Common_Control, Core_Control
      source_keyword: {
        keyword_input_type: "SELECT_FROM_LIST", # accepts SELECT_FROM_LIST, UPLOAD_FILE, INPUT_TEXT
        keyword_value: "KeywordValue",
      },
      source_frequency: "DAILY", # accepts DAILY, WEEKLY, MONTHLY
      troubleshooting_text: "TroubleshootingText",
    },
  ],
  tags: {
    "TagKey" => "TagValue",
  },
})

Response structure


resp.control.arn #=> String
resp.control.id #=> String
resp.control.type #=> String, one of "Standard", "Custom", "Core"
resp.control.name #=> String
resp.control.description #=> String
resp.control.testing_information #=> String
resp.control.action_plan_title #=> String
resp.control.action_plan_instructions #=> String
resp.control.control_sources #=> String
resp.control.control_mapping_sources #=> Array
resp.control.control_mapping_sources[0].source_id #=> String
resp.control.control_mapping_sources[0].source_name #=> String
resp.control.control_mapping_sources[0].source_description #=> String
resp.control.control_mapping_sources[0].source_set_up_option #=> String, one of "System_Controls_Mapping", "Procedural_Controls_Mapping"
resp.control.control_mapping_sources[0].source_type #=> String, one of "AWS_Cloudtrail", "AWS_Config", "AWS_Security_Hub", "AWS_API_Call", "MANUAL", "Common_Control", "Core_Control"
resp.control.control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST", "UPLOAD_FILE", "INPUT_TEXT"
resp.control.control_mapping_sources[0].source_keyword.keyword_value #=> String
resp.control.control_mapping_sources[0].source_frequency #=> String, one of "DAILY", "WEEKLY", "MONTHLY"
resp.control.control_mapping_sources[0].troubleshooting_text #=> String
resp.control.created_at #=> Time
resp.control.last_updated_at #=> Time
resp.control.created_by #=> String
resp.control.last_updated_by #=> String
resp.control.tags #=> Hash
resp.control.tags["TagKey"] #=> String
resp.control.state #=> String, one of "ACTIVE", "END_OF_SUPPORT"

Parameters:

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

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the control.

  • :description (String)

    The description of the control.

  • :testing_information (String)

    The steps to follow to determine if the control is satisfied.

  • :action_plan_title (String)

    The title of the action plan for remediating the control.

  • :action_plan_instructions (String)

    The recommended actions to carry out if the control isn't fulfilled.

  • :control_mapping_sources (required, Array<Types::CreateControlMappingSource>)

    The data mapping sources for the control.

  • :tags (Hash<String,String>)

    The tags that are associated with the control.

Returns:

See Also:



1157
1158
1159
1160
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1157

def create_control(params = {}, options = {})
  req = build_request(:create_control, params)
  req.send_request(options)
end

#delete_assessment(params = {}) ⇒ Struct

Deletes an assessment in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.delete_assessment({
  assessment_id: "UUID", # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The identifier for the assessment.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1179
1180
1181
1182
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1179

def delete_assessment(params = {}, options = {})
  req = build_request(:delete_assessment, params)
  req.send_request(options)
end

#delete_assessment_framework(params = {}) ⇒ Struct

Deletes a custom framework in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.delete_assessment_framework({
  framework_id: "UUID", # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :framework_id (required, String)

    The identifier for the custom framework.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1201
1202
1203
1204
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1201

def delete_assessment_framework(params = {}, options = {})
  req = build_request(:delete_assessment_framework, params)
  req.send_request(options)
end

#delete_assessment_framework_share(params = {}) ⇒ Struct

Deletes a share request for a custom framework in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.delete_assessment_framework_share({
  request_id: "UUID", # required
  request_type: "SENT", # required, accepts SENT, RECEIVED
})

Parameters:

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

    ({})

Options Hash (params):

  • :request_id (required, String)

    The unique identifier for the share request to be deleted.

  • :request_type (required, String)

    Specifies whether the share request is a sent request or a received request.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1228
1229
1230
1231
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1228

def delete_assessment_framework_share(params = {}, options = {})
  req = build_request(:delete_assessment_framework_share, params)
  req.send_request(options)
end

#delete_assessment_report(params = {}) ⇒ Struct

Deletes an assessment report in Audit Manager.

When you run the DeleteAssessmentReport operation, Audit Manager attempts to delete the following data:

  1. The specified assessment report that’s stored in your S3 bucket

  2. The associated metadata that’s stored in Audit Manager

If Audit Manager can’t access the assessment report in your S3 bucket, the report isn’t deleted. In this event, the DeleteAssessmentReport operation doesn’t fail. Instead, it proceeds to delete the associated metadata only. You must then delete the assessment report from the S3 bucket yourself.

This scenario happens when Audit Manager receives a 403 (Forbidden) or 404 (Not Found) error from Amazon S3. To avoid this, make sure that your S3 bucket is available, and that you configured the correct permissions for Audit Manager to delete resources in your S3 bucket. For an example permissions policy that you can use, see Assessment report destination permissions in the Audit Manager User Guide. For information about the issues that could cause a 403 (Forbidden) or 404 (Not Found) error from Amazon S3, see List of Error Codes in the Amazon Simple Storage Service API Reference.

Examples:

Request syntax with placeholder values


resp = client.delete_assessment_report({
  assessment_id: "UUID", # required
  assessment_report_id: "UUID", # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :assessment_report_id (required, String)

    The unique identifier for the assessment report.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1282
1283
1284
1285
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1282

def delete_assessment_report(params = {}, options = {})
  req = build_request(:delete_assessment_report, params)
  req.send_request(options)
end

#delete_control(params = {}) ⇒ Struct

Deletes a custom control in Audit Manager.

When you invoke this operation, the custom control is deleted from any frameworks or assessments that it’s currently part of. As a result, Audit Manager will stop collecting evidence for that custom control in all of your assessments. This includes assessments that you previously created before you deleted the custom control.

Examples:

Request syntax with placeholder values


resp = client.delete_control({
  control_id: "UUID", # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :control_id (required, String)

    The unique identifier for the control.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1310
1311
1312
1313
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1310

def delete_control(params = {}, options = {})
  req = build_request(:delete_control, params)
  req.send_request(options)
end

#deregister_account(params = {}) ⇒ Types::DeregisterAccountResponse

Deregisters an account in Audit Manager.

Before you deregister, you can use the UpdateSettings API operation to set your preferred data retention policy. By default, Audit Manager retains your data. If you want to delete your data, you can use the DeregistrationPolicy attribute to request the deletion of your data.

For more information about data retention, see Data Protection in the Audit Manager User Guide.

Examples:

Response structure


resp.status #=> String, one of "ACTIVE", "INACTIVE", "PENDING_ACTIVATION"

Parameters:

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

    ({})

Returns:

See Also:



1345
1346
1347
1348
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1345

def (params = {}, options = {})
  req = build_request(:deregister_account, params)
  req.send_request(options)
end

#deregister_organization_admin_account(params = {}) ⇒ Struct

Removes the specified Amazon Web Services account as a delegated administrator for Audit Manager.

When you remove a delegated administrator from your Audit Manager settings, you continue to have access to the evidence that you previously collected under that account. This is also the case when you deregister a delegated administrator from Organizations. However, Audit Manager stops collecting and attaching evidence to that delegated administrator account moving forward.

Keep in mind the following cleanup task if you use evidence finder:

Before you use your management account to remove a delegated administrator, make sure that the current delegated administrator account signs in to Audit Manager and disables evidence finder first. Disabling evidence finder automatically deletes the event data store that was created in their account when they enabled evidence finder. If this task isn’t completed, the event data store remains in their account. In this case, we recommend that the original delegated administrator goes to CloudTrail Lake and manually deletes the event data store.

This cleanup task is necessary to ensure that you don't end up with multiple event data stores. Audit Manager ignores an unused event data store after you remove or change a delegated administrator account. However, the unused event data store continues to incur storage costs from CloudTrail Lake if you don't delete it.

When you deregister a delegated administrator account for Audit Manager, the data for that account isn’t deleted. If you want to delete resource data for a delegated administrator account, you must perform that task separately before you deregister the account. Either, you can do this in the Audit Manager console. Or, you can use one of the delete API operations that are provided by Audit Manager.

To delete your Audit Manager resource data, see the following instructions:

At this time, Audit Manager doesn't provide an option to delete evidence for a specific delegated administrator. Instead, when your management account deregisters Audit Manager, we perform a cleanup for the current delegated administrator account at the time of deregistration.

Examples:

Request syntax with placeholder values


resp = client.({
  admin_account_id: "AccountId",
})

Parameters:

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

    ({})

Options Hash (params):

  • :admin_account_id (String)

    The identifier for the administrator account.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1438
1439
1440
1441
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1438

def (params = {}, options = {})
  req = build_request(:deregister_organization_admin_account, params)
  req.send_request(options)
end

#disassociate_assessment_report_evidence_folder(params = {}) ⇒ Struct

Disassociates an evidence folder from the specified assessment report in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.disassociate_assessment_report_evidence_folder({
  assessment_id: "UUID", # required
  evidence_folder_id: "UUID", # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :evidence_folder_id (required, String)

    The unique identifier for the folder that the evidence is stored in.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1465
1466
1467
1468
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1465

def disassociate_assessment_report_evidence_folder(params = {}, options = {})
  req = build_request(:disassociate_assessment_report_evidence_folder, params)
  req.send_request(options)
end

#get_account_status(params = {}) ⇒ Types::GetAccountStatusResponse

Gets the registration status of an account in Audit Manager.

Examples:

Response structure


resp.status #=> String, one of "ACTIVE", "INACTIVE", "PENDING_ACTIVATION"

Parameters:

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

    ({})

Returns:

See Also:



1484
1485
1486
1487
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1484

def (params = {}, options = {})
  req = build_request(:get_account_status, params)
  req.send_request(options)
end

#get_assessment(params = {}) ⇒ Types::GetAssessmentResponse

Gets information about a specified assessment.

Examples:

Request syntax with placeholder values


resp = client.get_assessment({
  assessment_id: "UUID", # required
})

Response structure


resp.assessment.arn #=> String
resp.assessment..id #=> String
resp.assessment..email_address #=> String
resp.assessment..name #=> String
resp.assessment..name #=> String
resp.assessment..id #=> String
resp.assessment..description #=> String
resp.assessment..compliance_type #=> String
resp.assessment..status #=> String, one of "ACTIVE", "INACTIVE"
resp.assessment..assessment_reports_destination.destination_type #=> String, one of "S3"
resp.assessment..assessment_reports_destination.destination #=> String
resp.assessment..scope.aws_accounts #=> Array
resp.assessment..scope.aws_accounts[0].id #=> String
resp.assessment..scope.aws_accounts[0].email_address #=> String
resp.assessment..scope.aws_accounts[0].name #=> String
resp.assessment..scope.aws_services #=> Array
resp.assessment..scope.aws_services[0].service_name #=> String
resp.assessment..roles #=> Array
resp.assessment..roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment..roles[0].role_arn #=> String
resp.assessment..delegations #=> Array
resp.assessment..delegations[0].id #=> String
resp.assessment..delegations[0].assessment_name #=> String
resp.assessment..delegations[0].assessment_id #=> String
resp.assessment..delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.assessment..delegations[0].role_arn #=> String
resp.assessment..delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment..delegations[0].creation_time #=> Time
resp.assessment..delegations[0].last_updated #=> Time
resp.assessment..delegations[0].control_set_id #=> String
resp.assessment..delegations[0].comment #=> String
resp.assessment..delegations[0].created_by #=> String
resp.assessment..creation_time #=> Time
resp.assessment..last_updated #=> Time
resp.assessment.framework.id #=> String
resp.assessment.framework.arn #=> String
resp.assessment.framework..name #=> String
resp.assessment.framework..description #=> String
resp.assessment.framework.. #=> String
resp.assessment.framework..compliance_type #=> String
resp.assessment.framework.control_sets #=> Array
resp.assessment.framework.control_sets[0].id #=> String
resp.assessment.framework.control_sets[0].description #=> String
resp.assessment.framework.control_sets[0].status #=> String, one of "ACTIVE", "UNDER_REVIEW", "REVIEWED"
resp.assessment.framework.control_sets[0].roles #=> Array
resp.assessment.framework.control_sets[0].roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment.framework.control_sets[0].roles[0].role_arn #=> String
resp.assessment.framework.control_sets[0].controls #=> Array
resp.assessment.framework.control_sets[0].controls[0].id #=> String
resp.assessment.framework.control_sets[0].controls[0].name #=> String
resp.assessment.framework.control_sets[0].controls[0].description #=> String
resp.assessment.framework.control_sets[0].controls[0].status #=> String, one of "UNDER_REVIEW", "REVIEWED", "INACTIVE"
resp.assessment.framework.control_sets[0].controls[0].response #=> String, one of "MANUAL", "AUTOMATE", "DEFER", "IGNORE"
resp.assessment.framework.control_sets[0].controls[0].comments #=> Array
resp.assessment.framework.control_sets[0].controls[0].comments[0].author_name #=> String
resp.assessment.framework.control_sets[0].controls[0].comments[0].comment_body #=> String
resp.assessment.framework.control_sets[0].controls[0].comments[0].posted_date #=> Time
resp.assessment.framework.control_sets[0].controls[0].evidence_sources #=> Array
resp.assessment.framework.control_sets[0].controls[0].evidence_sources[0] #=> String
resp.assessment.framework.control_sets[0].controls[0].evidence_count #=> Integer
resp.assessment.framework.control_sets[0].controls[0].assessment_report_evidence_count #=> Integer
resp.assessment.framework.control_sets[0].delegations #=> Array
resp.assessment.framework.control_sets[0].delegations[0].id #=> String
resp.assessment.framework.control_sets[0].delegations[0].assessment_name #=> String
resp.assessment.framework.control_sets[0].delegations[0].assessment_id #=> String
resp.assessment.framework.control_sets[0].delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.assessment.framework.control_sets[0].delegations[0].role_arn #=> String
resp.assessment.framework.control_sets[0].delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment.framework.control_sets[0].delegations[0].creation_time #=> Time
resp.assessment.framework.control_sets[0].delegations[0].last_updated #=> Time
resp.assessment.framework.control_sets[0].delegations[0].control_set_id #=> String
resp.assessment.framework.control_sets[0].delegations[0].comment #=> String
resp.assessment.framework.control_sets[0].delegations[0].created_by #=> String
resp.assessment.framework.control_sets[0].system_evidence_count #=> Integer
resp.assessment.framework.control_sets[0].manual_evidence_count #=> Integer
resp.assessment.tags #=> Hash
resp.assessment.tags["TagKey"] #=> String
resp.user_role.role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.user_role.role_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

Returns:

See Also:



1591
1592
1593
1594
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1591

def get_assessment(params = {}, options = {})
  req = build_request(:get_assessment, params)
  req.send_request(options)
end

#get_assessment_framework(params = {}) ⇒ Types::GetAssessmentFrameworkResponse

Gets information about a specified framework.

Examples:

Request syntax with placeholder values


resp = client.get_assessment_framework({
  framework_id: "UUID", # required
})

Response structure


resp.framework.arn #=> String
resp.framework.id #=> String
resp.framework.name #=> String
resp.framework.type #=> String, one of "Standard", "Custom"
resp.framework.compliance_type #=> String
resp.framework.description #=> String
resp.framework. #=> String
resp.framework.control_sources #=> String
resp.framework.control_sets #=> Array
resp.framework.control_sets[0].id #=> String
resp.framework.control_sets[0].name #=> String
resp.framework.control_sets[0].controls #=> Array
resp.framework.control_sets[0].controls[0].arn #=> String
resp.framework.control_sets[0].controls[0].id #=> String
resp.framework.control_sets[0].controls[0].type #=> String, one of "Standard", "Custom", "Core"
resp.framework.control_sets[0].controls[0].name #=> String
resp.framework.control_sets[0].controls[0].description #=> String
resp.framework.control_sets[0].controls[0].testing_information #=> String
resp.framework.control_sets[0].controls[0].action_plan_title #=> String
resp.framework.control_sets[0].controls[0].action_plan_instructions #=> String
resp.framework.control_sets[0].controls[0].control_sources #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources #=> Array
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_id #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_name #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_description #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_set_up_option #=> String, one of "System_Controls_Mapping", "Procedural_Controls_Mapping"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_type #=> String, one of "AWS_Cloudtrail", "AWS_Config", "AWS_Security_Hub", "AWS_API_Call", "MANUAL", "Common_Control", "Core_Control"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST", "UPLOAD_FILE", "INPUT_TEXT"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_value #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_frequency #=> String, one of "DAILY", "WEEKLY", "MONTHLY"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].troubleshooting_text #=> String
resp.framework.control_sets[0].controls[0].created_at #=> Time
resp.framework.control_sets[0].controls[0].last_updated_at #=> Time
resp.framework.control_sets[0].controls[0].created_by #=> String
resp.framework.control_sets[0].controls[0].last_updated_by #=> String
resp.framework.control_sets[0].controls[0].tags #=> Hash
resp.framework.control_sets[0].controls[0].tags["TagKey"] #=> String
resp.framework.control_sets[0].controls[0].state #=> String, one of "ACTIVE", "END_OF_SUPPORT"
resp.framework.created_at #=> Time
resp.framework.last_updated_at #=> Time
resp.framework.created_by #=> String
resp.framework.last_updated_by #=> String
resp.framework.tags #=> Hash
resp.framework.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :framework_id (required, String)

    The identifier for the framework.

Returns:

See Also:



1662
1663
1664
1665
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1662

def get_assessment_framework(params = {}, options = {})
  req = build_request(:get_assessment_framework, params)
  req.send_request(options)
end

#get_assessment_report_url(params = {}) ⇒ Types::GetAssessmentReportUrlResponse

Gets the URL of an assessment report in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.get_assessment_report_url({
  assessment_report_id: "UUID", # required
  assessment_id: "UUID", # required
})

Response structure


resp.pre_signed_url.hyperlink_name #=> String
resp.pre_signed_url.link #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_report_id (required, String)

    The unique identifier for the assessment report.

  • :assessment_id (required, String)

    The unique identifier for the assessment.

Returns:

See Also:



1695
1696
1697
1698
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1695

def get_assessment_report_url(params = {}, options = {})
  req = build_request(:get_assessment_report_url, params)
  req.send_request(options)
end

#get_change_logs(params = {}) ⇒ Types::GetChangeLogsResponse

Gets a list of changelogs from Audit Manager.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.get_change_logs({
  assessment_id: "UUID", # required
  control_set_id: "ControlSetId",
  control_id: "UUID",
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.change_logs #=> Array
resp.change_logs[0].object_type #=> String, one of "ASSESSMENT", "CONTROL_SET", "CONTROL", "DELEGATION", "ASSESSMENT_REPORT"
resp.change_logs[0].object_name #=> String
resp.change_logs[0].action #=> String, one of "CREATE", "UPDATE_METADATA", "ACTIVE", "INACTIVE", "DELETE", "UNDER_REVIEW", "REVIEWED", "IMPORT_EVIDENCE"
resp.change_logs[0].created_at #=> Time
resp.change_logs[0].created_by #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :control_set_id (String)

    The unique identifier for the control set.

  • :control_id (String)

    The unique identifier for the control.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



1749
1750
1751
1752
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1749

def get_change_logs(params = {}, options = {})
  req = build_request(:get_change_logs, params)
  req.send_request(options)
end

#get_control(params = {}) ⇒ Types::GetControlResponse

Gets information about a specified control.

Examples:

Request syntax with placeholder values


resp = client.get_control({
  control_id: "UUID", # required
})

Response structure


resp.control.arn #=> String
resp.control.id #=> String
resp.control.type #=> String, one of "Standard", "Custom", "Core"
resp.control.name #=> String
resp.control.description #=> String
resp.control.testing_information #=> String
resp.control.action_plan_title #=> String
resp.control.action_plan_instructions #=> String
resp.control.control_sources #=> String
resp.control.control_mapping_sources #=> Array
resp.control.control_mapping_sources[0].source_id #=> String
resp.control.control_mapping_sources[0].source_name #=> String
resp.control.control_mapping_sources[0].source_description #=> String
resp.control.control_mapping_sources[0].source_set_up_option #=> String, one of "System_Controls_Mapping", "Procedural_Controls_Mapping"
resp.control.control_mapping_sources[0].source_type #=> String, one of "AWS_Cloudtrail", "AWS_Config", "AWS_Security_Hub", "AWS_API_Call", "MANUAL", "Common_Control", "Core_Control"
resp.control.control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST", "UPLOAD_FILE", "INPUT_TEXT"
resp.control.control_mapping_sources[0].source_keyword.keyword_value #=> String
resp.control.control_mapping_sources[0].source_frequency #=> String, one of "DAILY", "WEEKLY", "MONTHLY"
resp.control.control_mapping_sources[0].troubleshooting_text #=> String
resp.control.created_at #=> Time
resp.control.last_updated_at #=> Time
resp.control.created_by #=> String
resp.control.last_updated_by #=> String
resp.control.tags #=> Hash
resp.control.tags["TagKey"] #=> String
resp.control.state #=> String, one of "ACTIVE", "END_OF_SUPPORT"

Parameters:

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

    ({})

Options Hash (params):

  • :control_id (required, String)

    The identifier for the control.

Returns:

See Also:



1802
1803
1804
1805
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1802

def get_control(params = {}, options = {})
  req = build_request(:get_control, params)
  req.send_request(options)
end

#get_delegations(params = {}) ⇒ Types::GetDelegationsResponse

Gets a list of delegations from an audit owner to a delegate.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.get_delegations({
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.delegations #=> Array
resp.delegations[0].id #=> String
resp.delegations[0].assessment_name #=> String
resp.delegations[0].assessment_id #=> String
resp.delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.delegations[0].role_arn #=> String
resp.delegations[0].creation_time #=> Time
resp.delegations[0].control_set_name #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



1846
1847
1848
1849
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1846

def get_delegations(params = {}, options = {})
  req = build_request(:get_delegations, params)
  req.send_request(options)
end

#get_evidence(params = {}) ⇒ Types::GetEvidenceResponse

Gets information about a specified evidence item.

Examples:

Request syntax with placeholder values


resp = client.get_evidence({
  assessment_id: "UUID", # required
  control_set_id: "ControlSetId", # required
  evidence_folder_id: "UUID", # required
  evidence_id: "UUID", # required
})

Response structure


resp.evidence.data_source #=> String
resp.evidence. #=> String
resp.evidence.time #=> Time
resp.evidence.event_source #=> String
resp.evidence.event_name #=> String
resp.evidence.evidence_by_type #=> String
resp.evidence.resources_included #=> Array
resp.evidence.resources_included[0].arn #=> String
resp.evidence.resources_included[0].value #=> String
resp.evidence.resources_included[0].compliance_check #=> String
resp.evidence.attributes #=> Hash
resp.evidence.attributes["EvidenceAttributeKey"] #=> String
resp.evidence.iam_id #=> String
resp.evidence.compliance_check #=> String
resp.evidence.aws_organization #=> String
resp.evidence. #=> String
resp.evidence.evidence_folder_id #=> String
resp.evidence.id #=> String
resp.evidence.assessment_report_selection #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :control_set_id (required, String)

    The unique identifier for the control set.

  • :evidence_folder_id (required, String)

    The unique identifier for the folder that the evidence is stored in.

  • :evidence_id (required, String)

    The unique identifier for the evidence.

Returns:

See Also:



1904
1905
1906
1907
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1904

def get_evidence(params = {}, options = {})
  req = build_request(:get_evidence, params)
  req.send_request(options)
end

#get_evidence_by_evidence_folder(params = {}) ⇒ Types::GetEvidenceByEvidenceFolderResponse

Gets all evidence from a specified evidence folder in Audit Manager.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.get_evidence_by_evidence_folder({
  assessment_id: "UUID", # required
  control_set_id: "ControlSetId", # required
  evidence_folder_id: "UUID", # required
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.evidence #=> Array
resp.evidence[0].data_source #=> String
resp.evidence[0]. #=> String
resp.evidence[0].time #=> Time
resp.evidence[0].event_source #=> String
resp.evidence[0].event_name #=> String
resp.evidence[0].evidence_by_type #=> String
resp.evidence[0].resources_included #=> Array
resp.evidence[0].resources_included[0].arn #=> String
resp.evidence[0].resources_included[0].value #=> String
resp.evidence[0].resources_included[0].compliance_check #=> String
resp.evidence[0].attributes #=> Hash
resp.evidence[0].attributes["EvidenceAttributeKey"] #=> String
resp.evidence[0].iam_id #=> String
resp.evidence[0].compliance_check #=> String
resp.evidence[0].aws_organization #=> String
resp.evidence[0]. #=> String
resp.evidence[0].evidence_folder_id #=> String
resp.evidence[0].id #=> String
resp.evidence[0].assessment_report_selection #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :control_set_id (required, String)

    The identifier for the control set.

  • :evidence_folder_id (required, String)

    The unique identifier for the folder that the evidence is stored in.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



1972
1973
1974
1975
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1972

def get_evidence_by_evidence_folder(params = {}, options = {})
  req = build_request(:get_evidence_by_evidence_folder, params)
  req.send_request(options)
end

#get_evidence_file_upload_url(params = {}) ⇒ Types::GetEvidenceFileUploadUrlResponse

Creates a presigned Amazon S3 URL that can be used to upload a file as manual evidence. For instructions on how to use this operation, see Upload a file from your browser in the Audit Manager User Guide.

The following restrictions apply to this operation:

  • Maximum size of an individual evidence file: 100 MB

  • Number of daily manual evidence uploads per control: 100

  • Supported file formats: See Supported file types for manual evidence in the Audit Manager User Guide

For more information about Audit Manager service restrictions, see Quotas and restrictions for Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.get_evidence_file_upload_url({
  file_name: "ManualEvidenceLocalFileName", # required
})

Response structure


resp.evidence_file_name #=> String
resp.upload_url #=> String

Parameters:

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

    ({})

Options Hash (params):

Returns:

See Also:



2029
2030
2031
2032
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2029

def get_evidence_file_upload_url(params = {}, options = {})
  req = build_request(:get_evidence_file_upload_url, params)
  req.send_request(options)
end

#get_evidence_folder(params = {}) ⇒ Types::GetEvidenceFolderResponse

Gets an evidence folder from a specified assessment in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.get_evidence_folder({
  assessment_id: "UUID", # required
  control_set_id: "ControlSetId", # required
  evidence_folder_id: "UUID", # required
})

Response structure


resp.evidence_folder.name #=> String
resp.evidence_folder.date #=> Time
resp.evidence_folder.assessment_id #=> String
resp.evidence_folder.control_set_id #=> String
resp.evidence_folder.control_id #=> String
resp.evidence_folder.id #=> String
resp.evidence_folder.data_source #=> String
resp.evidence_folder.author #=> String
resp.evidence_folder.total_evidence #=> Integer
resp.evidence_folder.assessment_report_selection_count #=> Integer
resp.evidence_folder.control_name #=> String
resp.evidence_folder.evidence_resources_included_count #=> Integer
resp.evidence_folder.evidence_by_type_configuration_data_count #=> Integer
resp.evidence_folder.evidence_by_type_manual_count #=> Integer
resp.evidence_folder.evidence_by_type_compliance_check_count #=> Integer
resp.evidence_folder.evidence_by_type_compliance_check_issues_count #=> Integer
resp.evidence_folder.evidence_by_type_user_activity_count #=> Integer
resp.evidence_folder.evidence_aws_service_source_count #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :control_set_id (required, String)

    The unique identifier for the control set.

  • :evidence_folder_id (required, String)

    The unique identifier for the folder that the evidence is stored in.

Returns:

See Also:



2082
2083
2084
2085
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2082

def get_evidence_folder(params = {}, options = {})
  req = build_request(:get_evidence_folder, params)
  req.send_request(options)
end

#get_evidence_folders_by_assessment(params = {}) ⇒ Types::GetEvidenceFoldersByAssessmentResponse

Gets the evidence folders from a specified assessment in Audit Manager.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.get_evidence_folders_by_assessment({
  assessment_id: "UUID", # required
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.evidence_folders #=> Array
resp.evidence_folders[0].name #=> String
resp.evidence_folders[0].date #=> Time
resp.evidence_folders[0].assessment_id #=> String
resp.evidence_folders[0].control_set_id #=> String
resp.evidence_folders[0].control_id #=> String
resp.evidence_folders[0].id #=> String
resp.evidence_folders[0].data_source #=> String
resp.evidence_folders[0].author #=> String
resp.evidence_folders[0].total_evidence #=> Integer
resp.evidence_folders[0].assessment_report_selection_count #=> Integer
resp.evidence_folders[0].control_name #=> String
resp.evidence_folders[0].evidence_resources_included_count #=> Integer
resp.evidence_folders[0].evidence_by_type_configuration_data_count #=> Integer
resp.evidence_folders[0].evidence_by_type_manual_count #=> Integer
resp.evidence_folders[0].evidence_by_type_compliance_check_count #=> Integer
resp.evidence_folders[0].evidence_by_type_compliance_check_issues_count #=> Integer
resp.evidence_folders[0].evidence_by_type_user_activity_count #=> Integer
resp.evidence_folders[0].evidence_aws_service_source_count #=> Integer
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2142
2143
2144
2145
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2142

def get_evidence_folders_by_assessment(params = {}, options = {})
  req = build_request(:get_evidence_folders_by_assessment, params)
  req.send_request(options)
end

#get_evidence_folders_by_assessment_control(params = {}) ⇒ Types::GetEvidenceFoldersByAssessmentControlResponse

Gets a list of evidence folders that are associated with a specified control in an Audit Manager assessment.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.get_evidence_folders_by_assessment_control({
  assessment_id: "UUID", # required
  control_set_id: "ControlSetId", # required
  control_id: "UUID", # required
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.evidence_folders #=> Array
resp.evidence_folders[0].name #=> String
resp.evidence_folders[0].date #=> Time
resp.evidence_folders[0].assessment_id #=> String
resp.evidence_folders[0].control_set_id #=> String
resp.evidence_folders[0].control_id #=> String
resp.evidence_folders[0].id #=> String
resp.evidence_folders[0].data_source #=> String
resp.evidence_folders[0].author #=> String
resp.evidence_folders[0].total_evidence #=> Integer
resp.evidence_folders[0].assessment_report_selection_count #=> Integer
resp.evidence_folders[0].control_name #=> String
resp.evidence_folders[0].evidence_resources_included_count #=> Integer
resp.evidence_folders[0].evidence_by_type_configuration_data_count #=> Integer
resp.evidence_folders[0].evidence_by_type_manual_count #=> Integer
resp.evidence_folders[0].evidence_by_type_compliance_check_count #=> Integer
resp.evidence_folders[0].evidence_by_type_compliance_check_issues_count #=> Integer
resp.evidence_folders[0].evidence_by_type_user_activity_count #=> Integer
resp.evidence_folders[0].evidence_aws_service_source_count #=> Integer
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :control_set_id (required, String)

    The identifier for the control set.

  • :control_id (required, String)

    The identifier for the control.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2210
2211
2212
2213
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2210

def get_evidence_folders_by_assessment_control(params = {}, options = {})
  req = build_request(:get_evidence_folders_by_assessment_control, params)
  req.send_request(options)
end

#get_insights(params = {}) ⇒ Types::GetInsightsResponse

Gets the latest analytics data for all your current active assessments.

Examples:

Response structure


resp.insights.active_assessments_count #=> Integer
resp.insights.noncompliant_evidence_count #=> Integer
resp.insights.compliant_evidence_count #=> Integer
resp.insights.inconclusive_evidence_count #=> Integer
resp.insights.assessment_controls_count_by_noncompliant_evidence #=> Integer
resp.insights.total_assessment_controls_count #=> Integer
resp.insights.last_updated #=> Time

Parameters:

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

    ({})

Returns:

See Also:



2236
2237
2238
2239
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2236

def get_insights(params = {}, options = {})
  req = build_request(:get_insights, params)
  req.send_request(options)
end

#get_insights_by_assessment(params = {}) ⇒ Types::GetInsightsByAssessmentResponse

Gets the latest analytics data for a specific active assessment.

Examples:

Request syntax with placeholder values


resp = client.get_insights_by_assessment({
  assessment_id: "UUID", # required
})

Response structure


resp.insights.noncompliant_evidence_count #=> Integer
resp.insights.compliant_evidence_count #=> Integer
resp.insights.inconclusive_evidence_count #=> Integer
resp.insights.assessment_controls_count_by_noncompliant_evidence #=> Integer
resp.insights.total_assessment_controls_count #=> Integer
resp.insights.last_updated #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

Returns:

See Also:



2269
2270
2271
2272
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2269

def get_insights_by_assessment(params = {}, options = {})
  req = build_request(:get_insights_by_assessment, params)
  req.send_request(options)
end

#get_organization_admin_account(params = {}) ⇒ Types::GetOrganizationAdminAccountResponse

Gets the name of the delegated Amazon Web Services administrator account for a specified organization.

Examples:

Response structure


resp. #=> String
resp.organization_id #=> String

Parameters:

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

    ({})

Returns:

See Also:



2291
2292
2293
2294
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2291

def (params = {}, options = {})
  req = build_request(:get_organization_admin_account, params)
  req.send_request(options)
end

#get_services_in_scope(params = {}) ⇒ Types::GetServicesInScopeResponse

Gets a list of the Amazon Web Services from which Audit Manager can collect evidence.

Audit Manager defines which Amazon Web Services are in scope for an assessment. Audit Manager infers this scope by examining the assessment’s controls and their data sources, and then mapping this information to one or more of the corresponding Amazon Web Services that are in this list.

For information about why it's no longer possible to specify services in scope manually, see I can't edit the services in scope for my assessment in the Troubleshooting section of the Audit Manager user guide.

Examples:

Response structure


resp. #=> Array
resp.[0].name #=> String
resp.[0].display_name #=> String
resp.[0].description #=> String
resp.[0].category #=> String

Parameters:

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

    ({})

Returns:

See Also:



2332
2333
2334
2335
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2332

def get_services_in_scope(params = {}, options = {})
  req = build_request(:get_services_in_scope, params)
  req.send_request(options)
end

#get_settings(params = {}) ⇒ Types::GetSettingsResponse

Gets the settings for a specified Amazon Web Services account.

Examples:

Request syntax with placeholder values


resp = client.get_settings({
  attribute: "ALL", # required, accepts ALL, IS_AWS_ORG_ENABLED, SNS_TOPIC, DEFAULT_ASSESSMENT_REPORTS_DESTINATION, DEFAULT_PROCESS_OWNERS, EVIDENCE_FINDER_ENABLEMENT, DEREGISTRATION_POLICY, DEFAULT_EXPORT_DESTINATION
})

Response structure


resp.settings.is_aws_org_enabled #=> Boolean
resp.settings.sns_topic #=> String
resp.settings.default_assessment_reports_destination.destination_type #=> String, one of "S3"
resp.settings.default_assessment_reports_destination.destination #=> String
resp.settings.default_process_owners #=> Array
resp.settings.default_process_owners[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.settings.default_process_owners[0].role_arn #=> String
resp.settings.kms_key #=> String
resp.settings.evidence_finder_enablement.event_data_store_arn #=> String
resp.settings.evidence_finder_enablement.enablement_status #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS"
resp.settings.evidence_finder_enablement.backfill_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.settings.evidence_finder_enablement.error #=> String
resp.settings.deregistration_policy.delete_resources #=> String, one of "ALL", "DEFAULT"
resp.settings.default_export_destination.destination_type #=> String, one of "S3"
resp.settings.default_export_destination.destination #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :attribute (required, String)

    The list of setting attribute enum values.

Returns:

See Also:



2374
2375
2376
2377
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2374

def get_settings(params = {}, options = {})
  req = build_request(:get_settings, params)
  req.send_request(options)
end

#list_assessment_control_insights_by_control_domain(params = {}) ⇒ Types::ListAssessmentControlInsightsByControlDomainResponse

Lists the latest analytics data for controls within a specific control domain and a specific active assessment.

Control insights are listed only if the control belongs to the control domain and assessment that was specified. Moreover, the control must have collected evidence on the lastUpdated date of controlInsightsByAssessment. If neither of these conditions are met, no data is listed for that control.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_assessment_control_insights_by_control_domain({
  control_domain_id: "ControlDomainId", # required
  assessment_id: "UUID", # required
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.control_insights_by_assessment #=> Array
resp.control_insights_by_assessment[0].name #=> String
resp.control_insights_by_assessment[0].id #=> String
resp.control_insights_by_assessment[0].evidence_insights.noncompliant_evidence_count #=> Integer
resp.control_insights_by_assessment[0].evidence_insights.compliant_evidence_count #=> Integer
resp.control_insights_by_assessment[0].evidence_insights.inconclusive_evidence_count #=> Integer
resp.control_insights_by_assessment[0].control_set_name #=> String
resp.control_insights_by_assessment[0].last_updated #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :control_domain_id (required, String)

    The unique identifier for the control domain.

    Audit Manager supports the control domains that are provided by Amazon Web Services Control Catalog. For information about how to find a list of available control domains, see ListDomains in the Amazon Web Services Control Catalog API Reference.

  • :assessment_id (required, String)

    The unique identifier for the active assessment.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2444
2445
2446
2447
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2444

def list_assessment_control_insights_by_control_domain(params = {}, options = {})
  req = build_request(:list_assessment_control_insights_by_control_domain, params)
  req.send_request(options)
end

#list_assessment_framework_share_requests(params = {}) ⇒ Types::ListAssessmentFrameworkShareRequestsResponse

Returns a list of sent or received share requests for custom frameworks in Audit Manager.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_assessment_framework_share_requests({
  request_type: "SENT", # required, accepts SENT, RECEIVED
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.assessment_framework_share_requests #=> Array
resp.assessment_framework_share_requests[0].id #=> String
resp.assessment_framework_share_requests[0].framework_id #=> String
resp.assessment_framework_share_requests[0].framework_name #=> String
resp.assessment_framework_share_requests[0].framework_description #=> String
resp.assessment_framework_share_requests[0].status #=> String, one of "ACTIVE", "REPLICATING", "SHARED", "EXPIRING", "FAILED", "EXPIRED", "DECLINED", "REVOKED"
resp.assessment_framework_share_requests[0]. #=> String
resp.assessment_framework_share_requests[0]. #=> String
resp.assessment_framework_share_requests[0].destination_region #=> String
resp.assessment_framework_share_requests[0].expiration_time #=> Time
resp.assessment_framework_share_requests[0].creation_time #=> Time
resp.assessment_framework_share_requests[0].last_updated #=> Time
resp.assessment_framework_share_requests[0].comment #=> String
resp.assessment_framework_share_requests[0].standard_controls_count #=> Integer
resp.assessment_framework_share_requests[0].custom_controls_count #=> Integer
resp.assessment_framework_share_requests[0].compliance_type #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :request_type (required, String)

    Specifies whether the share request is a sent request or a received request.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2502
2503
2504
2505
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2502

def list_assessment_framework_share_requests(params = {}, options = {})
  req = build_request(:list_assessment_framework_share_requests, params)
  req.send_request(options)
end

#list_assessment_frameworks(params = {}) ⇒ Types::ListAssessmentFrameworksResponse

Returns a list of the frameworks that are available in the Audit Manager framework library.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_assessment_frameworks({
  framework_type: "Standard", # required, accepts Standard, Custom
  next_token: "Token",
  max_results: 1,
})

Response structure


resp. #=> Array
resp.[0].arn #=> String
resp.[0].id #=> String
resp.[0].type #=> String, one of "Standard", "Custom"
resp.[0].name #=> String
resp.[0].description #=> String
resp.[0]. #=> String
resp.[0].compliance_type #=> String
resp.[0].controls_count #=> Integer
resp.[0].control_sets_count #=> Integer
resp.[0].created_at #=> Time
resp.[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :framework_type (required, String)

    The type of framework, such as a standard framework or a custom framework.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2556
2557
2558
2559
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2556

def list_assessment_frameworks(params = {}, options = {})
  req = build_request(:list_assessment_frameworks, params)
  req.send_request(options)
end

#list_assessment_reports(params = {}) ⇒ Types::ListAssessmentReportsResponse

Returns a list of assessment reports created in Audit Manager.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_assessment_reports({
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.assessment_reports #=> Array
resp.assessment_reports[0].id #=> String
resp.assessment_reports[0].name #=> String
resp.assessment_reports[0].description #=> String
resp.assessment_reports[0].assessment_id #=> String
resp.assessment_reports[0].assessment_name #=> String
resp.assessment_reports[0].author #=> String
resp.assessment_reports[0].status #=> String, one of "COMPLETE", "IN_PROGRESS", "FAILED"
resp.assessment_reports[0].creation_time #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2601
2602
2603
2604
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2601

def list_assessment_reports(params = {}, options = {})
  req = build_request(:list_assessment_reports, params)
  req.send_request(options)
end

#list_assessments(params = {}) ⇒ Types::ListAssessmentsResponse

Returns a list of current and past assessments from Audit Manager.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_assessments({
  status: "ACTIVE", # accepts ACTIVE, INACTIVE
  next_token: "Token",
  max_results: 1,
})

Response structure


resp. #=> Array
resp.[0].name #=> String
resp.[0].id #=> String
resp.[0].compliance_type #=> String
resp.[0].status #=> String, one of "ACTIVE", "INACTIVE"
resp.[0].roles #=> Array
resp.[0].roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.[0].roles[0].role_arn #=> String
resp.[0].delegations #=> Array
resp.[0].delegations[0].id #=> String
resp.[0].delegations[0].assessment_name #=> String
resp.[0].delegations[0].assessment_id #=> String
resp.[0].delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.[0].delegations[0].role_arn #=> String
resp.[0].delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.[0].delegations[0].creation_time #=> Time
resp.[0].delegations[0].last_updated #=> Time
resp.[0].delegations[0].control_set_id #=> String
resp.[0].delegations[0].comment #=> String
resp.[0].delegations[0].created_by #=> String
resp.[0].creation_time #=> Time
resp.[0].last_updated #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :status (String)

    The current status of the assessment.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2663
2664
2665
2666
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2663

def list_assessments(params = {}, options = {})
  req = build_request(:list_assessments, params)
  req.send_request(options)
end

#list_control_domain_insights(params = {}) ⇒ Types::ListControlDomainInsightsResponse

Lists the latest analytics data for control domains across all of your active assessments.

Audit Manager supports the control domains that are provided by Amazon Web Services Control Catalog. For information about how to find a list of available control domains, see ListDomains in the Amazon Web Services Control Catalog API Reference.

A control domain is listed only if at least one of the controls within that domain collected evidence on the lastUpdated date of controlDomainInsights. If this condition isn’t met, no data is listed for that control domain.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_control_domain_insights({
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.control_domain_insights #=> Array
resp.control_domain_insights[0].name #=> String
resp.control_domain_insights[0].id #=> String
resp.control_domain_insights[0].controls_count_by_noncompliant_evidence #=> Integer
resp.control_domain_insights[0].total_controls_count #=> Integer
resp.control_domain_insights[0].evidence_insights.noncompliant_evidence_count #=> Integer
resp.control_domain_insights[0].evidence_insights.compliant_evidence_count #=> Integer
resp.control_domain_insights[0].evidence_insights.inconclusive_evidence_count #=> Integer
resp.control_domain_insights[0].last_updated #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2725
2726
2727
2728
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2725

def list_control_domain_insights(params = {}, options = {})
  req = build_request(:list_control_domain_insights, params)
  req.send_request(options)
end

#list_control_domain_insights_by_assessment(params = {}) ⇒ Types::ListControlDomainInsightsByAssessmentResponse

Lists analytics data for control domains within a specified active assessment.

Audit Manager supports the control domains that are provided by Amazon Web Services Control Catalog. For information about how to find a list of available control domains, see ListDomains in the Amazon Web Services Control Catalog API Reference.

A control domain is listed only if at least one of the controls within that domain collected evidence on the lastUpdated date of controlDomainInsights. If this condition isn’t met, no data is listed for that domain.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_control_domain_insights_by_assessment({
  assessment_id: "UUID", # required
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.control_domain_insights #=> Array
resp.control_domain_insights[0].name #=> String
resp.control_domain_insights[0].id #=> String
resp.control_domain_insights[0].controls_count_by_noncompliant_evidence #=> Integer
resp.control_domain_insights[0].total_controls_count #=> Integer
resp.control_domain_insights[0].evidence_insights.noncompliant_evidence_count #=> Integer
resp.control_domain_insights[0].evidence_insights.compliant_evidence_count #=> Integer
resp.control_domain_insights[0].evidence_insights.inconclusive_evidence_count #=> Integer
resp.control_domain_insights[0].last_updated #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the active assessment.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2791
2792
2793
2794
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2791

def list_control_domain_insights_by_assessment(params = {}, options = {})
  req = build_request(:list_control_domain_insights_by_assessment, params)
  req.send_request(options)
end

#list_control_insights_by_control_domain(params = {}) ⇒ Types::ListControlInsightsByControlDomainResponse

Lists the latest analytics data for controls within a specific control domain across all active assessments.

Control insights are listed only if the control belongs to the control domain that was specified and the control collected evidence on the lastUpdated date of controlInsightsMetadata. If neither of these conditions are met, no data is listed for that control.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_control_insights_by_control_domain({
  control_domain_id: "ControlDomainId", # required
  next_token: "Token",
  max_results: 1,
})

Response structure


resp. #=> Array
resp.[0].name #=> String
resp.[0].id #=> String
resp.[0].evidence_insights.noncompliant_evidence_count #=> Integer
resp.[0].evidence_insights.compliant_evidence_count #=> Integer
resp.[0].evidence_insights.inconclusive_evidence_count #=> Integer
resp.[0].last_updated #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :control_domain_id (required, String)

    The unique identifier for the control domain.

    Audit Manager supports the control domains that are provided by Amazon Web Services Control Catalog. For information about how to find a list of available control domains, see ListDomains in the Amazon Web Services Control Catalog API Reference.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2855
2856
2857
2858
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2855

def list_control_insights_by_control_domain(params = {}, options = {})
  req = build_request(:list_control_insights_by_control_domain, params)
  req.send_request(options)
end

#list_controls(params = {}) ⇒ Types::ListControlsResponse

Returns a list of controls from Audit Manager.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_controls({
  control_type: "Standard", # required, accepts Standard, Custom, Core
  next_token: "Token",
  max_results: 1,
  control_catalog_id: "ControlCatalogId",
})

Response structure


resp. #=> Array
resp.[0].arn #=> String
resp.[0].id #=> String
resp.[0].name #=> String
resp.[0].control_sources #=> String
resp.[0].created_at #=> Time
resp.[0].last_updated_at #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :control_type (required, String)

    A filter that narrows the list of controls to a specific type.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    The maximum number of results on a page or for an API request call.

  • :control_catalog_id (String)

    A filter that narrows the list of controls to a specific resource from the Amazon Web Services Control Catalog.

    To use this parameter, specify the ARN of the Control Catalog resource. You can specify either a control domain, a control objective, or a common control. For information about how to find the ARNs for these resources, see ListDomains , ListObjectives , and ListCommonControls .

    You can only filter by one Control Catalog resource at a time. Specifying multiple resource ARNs isn’t currently supported. If you want to filter by more than one ARN, we recommend that you run the ListControls operation separately for each ARN.

    Alternatively, specify UNCATEGORIZED to list controls that aren't mapped to a Control Catalog resource. For example, this operation might return a list of custom controls that don't belong to any control domain or control objective.

Returns:

See Also:



2930
2931
2932
2933
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2930

def list_controls(params = {}, options = {})
  req = build_request(:list_controls, params)
  req.send_request(options)
end

#list_keywords_for_data_source(params = {}) ⇒ Types::ListKeywordsForDataSourceResponse

Returns a list of keywords that are pre-mapped to the specified control data source.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_keywords_for_data_source({
  source: "AWS_Cloudtrail", # required, accepts AWS_Cloudtrail, AWS_Config, AWS_Security_Hub, AWS_API_Call, MANUAL
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.keywords #=> Array
resp.keywords[0] #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :source (required, String)

    The control mapping data source that the keywords apply to.

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



2973
2974
2975
2976
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2973

def list_keywords_for_data_source(params = {}, options = {})
  req = build_request(:list_keywords_for_data_source, params)
  req.send_request(options)
end

#list_notifications(params = {}) ⇒ Types::ListNotificationsResponse

Returns a list of all Audit Manager notifications.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_notifications({
  next_token: "Token",
  max_results: 1,
})

Response structure


resp.notifications #=> Array
resp.notifications[0].id #=> String
resp.notifications[0].assessment_id #=> String
resp.notifications[0].assessment_name #=> String
resp.notifications[0].control_set_id #=> String
resp.notifications[0].control_set_name #=> String
resp.notifications[0].description #=> String
resp.notifications[0].event_time #=> Time
resp.notifications[0].source #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

    The pagination token that's used to fetch the next set of results.

  • :max_results (Integer)

    Represents the maximum number of results on a page or for an API request call.

Returns:

See Also:



3018
3019
3020
3021
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3018

def list_notifications(params = {}, options = {})
  req = build_request(:list_notifications, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

Returns a list of tags for the specified resource in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "AuditManagerArn", # required
})

Response structure


resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource.

Returns:

See Also:



3047
3048
3049
3050
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3047

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

#register_account(params = {}) ⇒ Types::RegisterAccountResponse

Enables Audit Manager for the specified Amazon Web Services account.

Examples:

Request syntax with placeholder values


resp = client.({
  kms_key: "KmsKey",
  delegated_admin_account: "AccountId",
})

Response structure


resp.status #=> String, one of "ACTIVE", "INACTIVE", "PENDING_ACTIVATION"

Parameters:

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

    ({})

Options Hash (params):

  • :kms_key (String)

    The KMS key details.

  • :delegated_admin_account (String)

    The delegated administrator account for Audit Manager.

Returns:

See Also:



3079
3080
3081
3082
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3079

def (params = {}, options = {})
  req = build_request(:register_account, params)
  req.send_request(options)
end

#register_organization_admin_account(params = {}) ⇒ Types::RegisterOrganizationAdminAccountResponse

Enables an Amazon Web Services account within the organization as the delegated administrator for Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.({
  admin_account_id: "AccountId", # required
})

Response structure


resp. #=> String
resp.organization_id #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :admin_account_id (required, String)

    The identifier for the delegated administrator account.

Returns:

See Also:



3110
3111
3112
3113
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3110

def (params = {}, options = {})
  req = build_request(:register_organization_admin_account, params)
  req.send_request(options)
end

#start_assessment_framework_share(params = {}) ⇒ Types::StartAssessmentFrameworkShareResponse

Creates a share request for a custom framework in Audit Manager.

The share request specifies a recipient and notifies them that a custom framework is available. Recipients have 120 days to accept or decline the request. If no action is taken, the share request expires.

When you create a share request, Audit Manager stores a snapshot of your custom framework in the US East (N. Virginia) Amazon Web Services Region. Audit Manager also stores a backup of the same snapshot in the US West (Oregon) Amazon Web Services Region.

Audit Manager deletes the snapshot and the backup snapshot when one of the following events occurs:

  • The sender revokes the share request.

  • The recipient declines the share request.

  • The recipient encounters an error and doesn't successfully accept the share request.

  • The share request expires before the recipient responds to the request.

When a sender resends a share request, the snapshot is replaced with an updated version that corresponds with the latest version of the custom framework.

When a recipient accepts a share request, the snapshot is replicated into their Amazon Web Services account under the Amazon Web Services Region that was specified in the share request.

When you invoke the StartAssessmentFrameworkShare API, you are about to share a custom framework with another Amazon Web Services account. You may not share a custom framework that is derived from a standard framework if the standard framework is designated as not eligible for sharing by Amazon Web Services, unless you have obtained permission to do so from the owner of the standard framework. To learn more about which standard frameworks are eligible for sharing, see Framework sharing eligibility in the Audit Manager User Guide.

Examples:

Request syntax with placeholder values


resp = client.start_assessment_framework_share({
  framework_id: "UUID", # required
  destination_account: "AccountId", # required
  destination_region: "Region", # required
  comment: "ShareRequestComment",
})

Response structure


resp.assessment_framework_share_request.id #=> String
resp.assessment_framework_share_request.framework_id #=> String
resp.assessment_framework_share_request.framework_name #=> String
resp.assessment_framework_share_request.framework_description #=> String
resp.assessment_framework_share_request.status #=> String, one of "ACTIVE", "REPLICATING", "SHARED", "EXPIRING", "FAILED", "EXPIRED", "DECLINED", "REVOKED"
resp.assessment_framework_share_request. #=> String
resp.assessment_framework_share_request. #=> String
resp.assessment_framework_share_request.destination_region #=> String
resp.assessment_framework_share_request.expiration_time #=> Time
resp.assessment_framework_share_request.creation_time #=> Time
resp.assessment_framework_share_request.last_updated #=> Time
resp.assessment_framework_share_request.comment #=> String
resp.assessment_framework_share_request.standard_controls_count #=> Integer
resp.assessment_framework_share_request.custom_controls_count #=> Integer
resp.assessment_framework_share_request.compliance_type #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :framework_id (required, String)

    The unique identifier for the custom framework to be shared.

  • :destination_account (required, String)

    The Amazon Web Services account of the recipient.

  • :destination_region (required, String)

    The Amazon Web Services Region of the recipient.

  • :comment (String)

    An optional comment from the sender about the share request.

Returns:

See Also:



3208
3209
3210
3211
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3208

def start_assessment_framework_share(params = {}, options = {})
  req = build_request(:start_assessment_framework_share, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

Tags the specified resource in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "AuditManagerArn", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource.

  • :tags (required, Hash<String,String>)

    The tags that are associated with the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3236
3237
3238
3239
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3236

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

Removes a tag from a resource in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "AuditManagerArn", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the specified resource.

  • :tag_keys (required, Array<String>)

    The name or key of the tag.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



3262
3263
3264
3265
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3262

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_assessment(params = {}) ⇒ Types::UpdateAssessmentResponse

Edits an Audit Manager assessment.

Examples:

Request syntax with placeholder values


resp = client.update_assessment({
  assessment_id: "UUID", # required
  assessment_name: "AssessmentName",
  assessment_description: "AssessmentDescription",
  scope: { # required
    aws_accounts: [
      {
        id: "AccountId",
        email_address: "EmailAddress",
        name: "AccountName",
      },
    ],
    aws_services: [
      {
        service_name: "AWSServiceName",
      },
    ],
  },
  assessment_reports_destination: {
    destination_type: "S3", # accepts S3
    destination: "S3Url",
  },
  roles: [
    {
      role_type: "PROCESS_OWNER", # required, accepts PROCESS_OWNER, RESOURCE_OWNER
      role_arn: "IamArn", # required
    },
  ],
})

Response structure


resp.assessment.arn #=> String
resp.assessment..id #=> String
resp.assessment..email_address #=> String
resp.assessment..name #=> String
resp.assessment..name #=> String
resp.assessment..id #=> String
resp.assessment..description #=> String
resp.assessment..compliance_type #=> String
resp.assessment..status #=> String, one of "ACTIVE", "INACTIVE"
resp.assessment..assessment_reports_destination.destination_type #=> String, one of "S3"
resp.assessment..assessment_reports_destination.destination #=> String
resp.assessment..scope.aws_accounts #=> Array
resp.assessment..scope.aws_accounts[0].id #=> String
resp.assessment..scope.aws_accounts[0].email_address #=> String
resp.assessment..scope.aws_accounts[0].name #=> String
resp.assessment..scope.aws_services #=> Array
resp.assessment..scope.aws_services[0].service_name #=> String
resp.assessment..roles #=> Array
resp.assessment..roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment..roles[0].role_arn #=> String
resp.assessment..delegations #=> Array
resp.assessment..delegations[0].id #=> String
resp.assessment..delegations[0].assessment_name #=> String
resp.assessment..delegations[0].assessment_id #=> String
resp.assessment..delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.assessment..delegations[0].role_arn #=> String
resp.assessment..delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment..delegations[0].creation_time #=> Time
resp.assessment..delegations[0].last_updated #=> Time
resp.assessment..delegations[0].control_set_id #=> String
resp.assessment..delegations[0].comment #=> String
resp.assessment..delegations[0].created_by #=> String
resp.assessment..creation_time #=> Time
resp.assessment..last_updated #=> Time
resp.assessment.framework.id #=> String
resp.assessment.framework.arn #=> String
resp.assessment.framework..name #=> String
resp.assessment.framework..description #=> String
resp.assessment.framework.. #=> String
resp.assessment.framework..compliance_type #=> String
resp.assessment.framework.control_sets #=> Array
resp.assessment.framework.control_sets[0].id #=> String
resp.assessment.framework.control_sets[0].description #=> String
resp.assessment.framework.control_sets[0].status #=> String, one of "ACTIVE", "UNDER_REVIEW", "REVIEWED"
resp.assessment.framework.control_sets[0].roles #=> Array
resp.assessment.framework.control_sets[0].roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment.framework.control_sets[0].roles[0].role_arn #=> String
resp.assessment.framework.control_sets[0].controls #=> Array
resp.assessment.framework.control_sets[0].controls[0].id #=> String
resp.assessment.framework.control_sets[0].controls[0].name #=> String
resp.assessment.framework.control_sets[0].controls[0].description #=> String
resp.assessment.framework.control_sets[0].controls[0].status #=> String, one of "UNDER_REVIEW", "REVIEWED", "INACTIVE"
resp.assessment.framework.control_sets[0].controls[0].response #=> String, one of "MANUAL", "AUTOMATE", "DEFER", "IGNORE"
resp.assessment.framework.control_sets[0].controls[0].comments #=> Array
resp.assessment.framework.control_sets[0].controls[0].comments[0].author_name #=> String
resp.assessment.framework.control_sets[0].controls[0].comments[0].comment_body #=> String
resp.assessment.framework.control_sets[0].controls[0].comments[0].posted_date #=> Time
resp.assessment.framework.control_sets[0].controls[0].evidence_sources #=> Array
resp.assessment.framework.control_sets[0].controls[0].evidence_sources[0] #=> String
resp.assessment.framework.control_sets[0].controls[0].evidence_count #=> Integer
resp.assessment.framework.control_sets[0].controls[0].assessment_report_evidence_count #=> Integer
resp.assessment.framework.control_sets[0].delegations #=> Array
resp.assessment.framework.control_sets[0].delegations[0].id #=> String
resp.assessment.framework.control_sets[0].delegations[0].assessment_name #=> String
resp.assessment.framework.control_sets[0].delegations[0].assessment_id #=> String
resp.assessment.framework.control_sets[0].delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.assessment.framework.control_sets[0].delegations[0].role_arn #=> String
resp.assessment.framework.control_sets[0].delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment.framework.control_sets[0].delegations[0].creation_time #=> Time
resp.assessment.framework.control_sets[0].delegations[0].last_updated #=> Time
resp.assessment.framework.control_sets[0].delegations[0].control_set_id #=> String
resp.assessment.framework.control_sets[0].delegations[0].comment #=> String
resp.assessment.framework.control_sets[0].delegations[0].created_by #=> String
resp.assessment.framework.control_sets[0].system_evidence_count #=> Integer
resp.assessment.framework.control_sets[0].manual_evidence_count #=> Integer
resp.assessment.tags #=> Hash
resp.assessment.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :assessment_name (String)

    The name of the assessment to be updated.

  • :assessment_description (String)

    The description of the assessment.

  • :scope (required, Types::Scope)

    The scope of the assessment.

  • :assessment_reports_destination (Types::AssessmentReportsDestination)

    The assessment report storage destination for the assessment that's being updated.

  • :roles (Array<Types::Role>)

    The list of roles for the assessment.

Returns:

See Also:



3408
3409
3410
3411
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3408

def update_assessment(params = {}, options = {})
  req = build_request(:update_assessment, params)
  req.send_request(options)
end

#update_assessment_control(params = {}) ⇒ Types::UpdateAssessmentControlResponse

Updates a control within an assessment in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.update_assessment_control({
  assessment_id: "UUID", # required
  control_set_id: "ControlSetId", # required
  control_id: "UUID", # required
  control_status: "UNDER_REVIEW", # accepts UNDER_REVIEW, REVIEWED, INACTIVE
  comment_body: "ControlCommentBody",
})

Response structure


resp.control.id #=> String
resp.control.name #=> String
resp.control.description #=> String
resp.control.status #=> String, one of "UNDER_REVIEW", "REVIEWED", "INACTIVE"
resp.control.response #=> String, one of "MANUAL", "AUTOMATE", "DEFER", "IGNORE"
resp.control.comments #=> Array
resp.control.comments[0].author_name #=> String
resp.control.comments[0].comment_body #=> String
resp.control.comments[0].posted_date #=> Time
resp.control.evidence_sources #=> Array
resp.control.evidence_sources[0] #=> String
resp.control.evidence_count #=> Integer
resp.control.assessment_report_evidence_count #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :control_set_id (required, String)

    The unique identifier for the control set.

  • :control_id (required, String)

    The unique identifier for the control.

  • :control_status (String)

    The status of the control.

  • :comment_body (String)

    The comment body text for the control.

Returns:

See Also:



3464
3465
3466
3467
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3464

def update_assessment_control(params = {}, options = {})
  req = build_request(:update_assessment_control, params)
  req.send_request(options)
end

#update_assessment_control_set_status(params = {}) ⇒ Types::UpdateAssessmentControlSetStatusResponse

Updates the status of a control set in an Audit Manager assessment.

Examples:

Request syntax with placeholder values


resp = client.update_assessment_control_set_status({
  assessment_id: "UUID", # required
  control_set_id: "String", # required
  status: "ACTIVE", # required, accepts ACTIVE, UNDER_REVIEW, REVIEWED
  comment: "DelegationComment", # required
})

Response structure


resp.control_set.id #=> String
resp.control_set.description #=> String
resp.control_set.status #=> String, one of "ACTIVE", "UNDER_REVIEW", "REVIEWED"
resp.control_set.roles #=> Array
resp.control_set.roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.control_set.roles[0].role_arn #=> String
resp.control_set.controls #=> Array
resp.control_set.controls[0].id #=> String
resp.control_set.controls[0].name #=> String
resp.control_set.controls[0].description #=> String
resp.control_set.controls[0].status #=> String, one of "UNDER_REVIEW", "REVIEWED", "INACTIVE"
resp.control_set.controls[0].response #=> String, one of "MANUAL", "AUTOMATE", "DEFER", "IGNORE"
resp.control_set.controls[0].comments #=> Array
resp.control_set.controls[0].comments[0].author_name #=> String
resp.control_set.controls[0].comments[0].comment_body #=> String
resp.control_set.controls[0].comments[0].posted_date #=> Time
resp.control_set.controls[0].evidence_sources #=> Array
resp.control_set.controls[0].evidence_sources[0] #=> String
resp.control_set.controls[0].evidence_count #=> Integer
resp.control_set.controls[0].assessment_report_evidence_count #=> Integer
resp.control_set.delegations #=> Array
resp.control_set.delegations[0].id #=> String
resp.control_set.delegations[0].assessment_name #=> String
resp.control_set.delegations[0].assessment_id #=> String
resp.control_set.delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.control_set.delegations[0].role_arn #=> String
resp.control_set.delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.control_set.delegations[0].creation_time #=> Time
resp.control_set.delegations[0].last_updated #=> Time
resp.control_set.delegations[0].control_set_id #=> String
resp.control_set.delegations[0].comment #=> String
resp.control_set.delegations[0].created_by #=> String
resp.control_set.system_evidence_count #=> Integer
resp.control_set.manual_evidence_count #=> Integer

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :control_set_id (required, String)

    The unique identifier for the control set.

  • :status (required, String)

    The status of the control set that's being updated.

  • :comment (required, String)

    The comment that's related to the status update.

Returns:

See Also:



3537
3538
3539
3540
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3537

def update_assessment_control_set_status(params = {}, options = {})
  req = build_request(:update_assessment_control_set_status, params)
  req.send_request(options)
end

#update_assessment_framework(params = {}) ⇒ Types::UpdateAssessmentFrameworkResponse

Updates a custom framework in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.update_assessment_framework({
  framework_id: "UUID", # required
  name: "FrameworkName", # required
  description: "FrameworkDescription",
  compliance_type: "ComplianceType",
  control_sets: [ # required
    {
      id: "ControlSetName",
      name: "ControlSetName", # required
      controls: [ # required
        {
          id: "UUID", # required
        },
      ],
    },
  ],
})

Response structure


resp.framework.arn #=> String
resp.framework.id #=> String
resp.framework.name #=> String
resp.framework.type #=> String, one of "Standard", "Custom"
resp.framework.compliance_type #=> String
resp.framework.description #=> String
resp.framework. #=> String
resp.framework.control_sources #=> String
resp.framework.control_sets #=> Array
resp.framework.control_sets[0].id #=> String
resp.framework.control_sets[0].name #=> String
resp.framework.control_sets[0].controls #=> Array
resp.framework.control_sets[0].controls[0].arn #=> String
resp.framework.control_sets[0].controls[0].id #=> String
resp.framework.control_sets[0].controls[0].type #=> String, one of "Standard", "Custom", "Core"
resp.framework.control_sets[0].controls[0].name #=> String
resp.framework.control_sets[0].controls[0].description #=> String
resp.framework.control_sets[0].controls[0].testing_information #=> String
resp.framework.control_sets[0].controls[0].action_plan_title #=> String
resp.framework.control_sets[0].controls[0].action_plan_instructions #=> String
resp.framework.control_sets[0].controls[0].control_sources #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources #=> Array
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_id #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_name #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_description #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_set_up_option #=> String, one of "System_Controls_Mapping", "Procedural_Controls_Mapping"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_type #=> String, one of "AWS_Cloudtrail", "AWS_Config", "AWS_Security_Hub", "AWS_API_Call", "MANUAL", "Common_Control", "Core_Control"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST", "UPLOAD_FILE", "INPUT_TEXT"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_value #=> String
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_frequency #=> String, one of "DAILY", "WEEKLY", "MONTHLY"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].troubleshooting_text #=> String
resp.framework.control_sets[0].controls[0].created_at #=> Time
resp.framework.control_sets[0].controls[0].last_updated_at #=> Time
resp.framework.control_sets[0].controls[0].created_by #=> String
resp.framework.control_sets[0].controls[0].last_updated_by #=> String
resp.framework.control_sets[0].controls[0].tags #=> Hash
resp.framework.control_sets[0].controls[0].tags["TagKey"] #=> String
resp.framework.control_sets[0].controls[0].state #=> String, one of "ACTIVE", "END_OF_SUPPORT"
resp.framework.created_at #=> Time
resp.framework.last_updated_at #=> Time
resp.framework.created_by #=> String
resp.framework.last_updated_by #=> String
resp.framework.tags #=> Hash
resp.framework.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :framework_id (required, String)

    The unique identifier for the framework.

  • :name (required, String)

    The name of the framework to be updated.

  • :description (String)

    The description of the updated framework.

  • :compliance_type (String)

    The compliance type that the new custom framework supports, such as CIS or HIPAA.

  • :control_sets (required, Array<Types::UpdateAssessmentFrameworkControlSet>)

    The control sets that are associated with the framework.

Returns:

See Also:



3635
3636
3637
3638
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3635

def update_assessment_framework(params = {}, options = {})
  req = build_request(:update_assessment_framework, params)
  req.send_request(options)
end

#update_assessment_framework_share(params = {}) ⇒ Types::UpdateAssessmentFrameworkShareResponse

Updates a share request for a custom framework in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.update_assessment_framework_share({
  request_id: "UUID", # required
  request_type: "SENT", # required, accepts SENT, RECEIVED
  action: "ACCEPT", # required, accepts ACCEPT, DECLINE, REVOKE
})

Response structure


resp.assessment_framework_share_request.id #=> String
resp.assessment_framework_share_request.framework_id #=> String
resp.assessment_framework_share_request.framework_name #=> String
resp.assessment_framework_share_request.framework_description #=> String
resp.assessment_framework_share_request.status #=> String, one of "ACTIVE", "REPLICATING", "SHARED", "EXPIRING", "FAILED", "EXPIRED", "DECLINED", "REVOKED"
resp.assessment_framework_share_request. #=> String
resp.assessment_framework_share_request. #=> String
resp.assessment_framework_share_request.destination_region #=> String
resp.assessment_framework_share_request.expiration_time #=> Time
resp.assessment_framework_share_request.creation_time #=> Time
resp.assessment_framework_share_request.last_updated #=> Time
resp.assessment_framework_share_request.comment #=> String
resp.assessment_framework_share_request.standard_controls_count #=> Integer
resp.assessment_framework_share_request.custom_controls_count #=> Integer
resp.assessment_framework_share_request.compliance_type #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :request_id (required, String)

    The unique identifier for the share request.

  • :request_type (required, String)

    Specifies whether the share request is a sent request or a received request.

  • :action (required, String)

    Specifies the update action for the share request.

Returns:

See Also:



3686
3687
3688
3689
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3686

def update_assessment_framework_share(params = {}, options = {})
  req = build_request(:update_assessment_framework_share, params)
  req.send_request(options)
end

#update_assessment_status(params = {}) ⇒ Types::UpdateAssessmentStatusResponse

Updates the status of an assessment in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.update_assessment_status({
  assessment_id: "UUID", # required
  status: "ACTIVE", # required, accepts ACTIVE, INACTIVE
})

Response structure


resp.assessment.arn #=> String
resp.assessment..id #=> String
resp.assessment..email_address #=> String
resp.assessment..name #=> String
resp.assessment..name #=> String
resp.assessment..id #=> String
resp.assessment..description #=> String
resp.assessment..compliance_type #=> String
resp.assessment..status #=> String, one of "ACTIVE", "INACTIVE"
resp.assessment..assessment_reports_destination.destination_type #=> String, one of "S3"
resp.assessment..assessment_reports_destination.destination #=> String
resp.assessment..scope.aws_accounts #=> Array
resp.assessment..scope.aws_accounts[0].id #=> String
resp.assessment..scope.aws_accounts[0].email_address #=> String
resp.assessment..scope.aws_accounts[0].name #=> String
resp.assessment..scope.aws_services #=> Array
resp.assessment..scope.aws_services[0].service_name #=> String
resp.assessment..roles #=> Array
resp.assessment..roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment..roles[0].role_arn #=> String
resp.assessment..delegations #=> Array
resp.assessment..delegations[0].id #=> String
resp.assessment..delegations[0].assessment_name #=> String
resp.assessment..delegations[0].assessment_id #=> String
resp.assessment..delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.assessment..delegations[0].role_arn #=> String
resp.assessment..delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment..delegations[0].creation_time #=> Time
resp.assessment..delegations[0].last_updated #=> Time
resp.assessment..delegations[0].control_set_id #=> String
resp.assessment..delegations[0].comment #=> String
resp.assessment..delegations[0].created_by #=> String
resp.assessment..creation_time #=> Time
resp.assessment..last_updated #=> Time
resp.assessment.framework.id #=> String
resp.assessment.framework.arn #=> String
resp.assessment.framework..name #=> String
resp.assessment.framework..description #=> String
resp.assessment.framework.. #=> String
resp.assessment.framework..compliance_type #=> String
resp.assessment.framework.control_sets #=> Array
resp.assessment.framework.control_sets[0].id #=> String
resp.assessment.framework.control_sets[0].description #=> String
resp.assessment.framework.control_sets[0].status #=> String, one of "ACTIVE", "UNDER_REVIEW", "REVIEWED"
resp.assessment.framework.control_sets[0].roles #=> Array
resp.assessment.framework.control_sets[0].roles[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment.framework.control_sets[0].roles[0].role_arn #=> String
resp.assessment.framework.control_sets[0].controls #=> Array
resp.assessment.framework.control_sets[0].controls[0].id #=> String
resp.assessment.framework.control_sets[0].controls[0].name #=> String
resp.assessment.framework.control_sets[0].controls[0].description #=> String
resp.assessment.framework.control_sets[0].controls[0].status #=> String, one of "UNDER_REVIEW", "REVIEWED", "INACTIVE"
resp.assessment.framework.control_sets[0].controls[0].response #=> String, one of "MANUAL", "AUTOMATE", "DEFER", "IGNORE"
resp.assessment.framework.control_sets[0].controls[0].comments #=> Array
resp.assessment.framework.control_sets[0].controls[0].comments[0].author_name #=> String
resp.assessment.framework.control_sets[0].controls[0].comments[0].comment_body #=> String
resp.assessment.framework.control_sets[0].controls[0].comments[0].posted_date #=> Time
resp.assessment.framework.control_sets[0].controls[0].evidence_sources #=> Array
resp.assessment.framework.control_sets[0].controls[0].evidence_sources[0] #=> String
resp.assessment.framework.control_sets[0].controls[0].evidence_count #=> Integer
resp.assessment.framework.control_sets[0].controls[0].assessment_report_evidence_count #=> Integer
resp.assessment.framework.control_sets[0].delegations #=> Array
resp.assessment.framework.control_sets[0].delegations[0].id #=> String
resp.assessment.framework.control_sets[0].delegations[0].assessment_name #=> String
resp.assessment.framework.control_sets[0].delegations[0].assessment_id #=> String
resp.assessment.framework.control_sets[0].delegations[0].status #=> String, one of "IN_PROGRESS", "UNDER_REVIEW", "COMPLETE"
resp.assessment.framework.control_sets[0].delegations[0].role_arn #=> String
resp.assessment.framework.control_sets[0].delegations[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.assessment.framework.control_sets[0].delegations[0].creation_time #=> Time
resp.assessment.framework.control_sets[0].delegations[0].last_updated #=> Time
resp.assessment.framework.control_sets[0].delegations[0].control_set_id #=> String
resp.assessment.framework.control_sets[0].delegations[0].comment #=> String
resp.assessment.framework.control_sets[0].delegations[0].created_by #=> String
resp.assessment.framework.control_sets[0].system_evidence_count #=> Integer
resp.assessment.framework.control_sets[0].manual_evidence_count #=> Integer
resp.assessment.tags #=> Hash
resp.assessment.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :status (required, String)

    The current status of the assessment.

Returns:

See Also:



3794
3795
3796
3797
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3794

def update_assessment_status(params = {}, options = {})
  req = build_request(:update_assessment_status, params)
  req.send_request(options)
end

#update_control(params = {}) ⇒ Types::UpdateControlResponse

Updates a custom control in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.update_control({
  control_id: "UUID", # required
  name: "ControlName", # required
  description: "ControlDescription",
  testing_information: "TestingInformation",
  action_plan_title: "ActionPlanTitle",
  action_plan_instructions: "ActionPlanInstructions",
  control_mapping_sources: [ # required
    {
      source_id: "UUID",
      source_name: "SourceName",
      source_description: "SourceDescription",
      source_set_up_option: "System_Controls_Mapping", # accepts System_Controls_Mapping, Procedural_Controls_Mapping
      source_type: "AWS_Cloudtrail", # accepts AWS_Cloudtrail, AWS_Config, AWS_Security_Hub, AWS_API_Call, MANUAL, Common_Control, Core_Control
      source_keyword: {
        keyword_input_type: "SELECT_FROM_LIST", # accepts SELECT_FROM_LIST, UPLOAD_FILE, INPUT_TEXT
        keyword_value: "KeywordValue",
      },
      source_frequency: "DAILY", # accepts DAILY, WEEKLY, MONTHLY
      troubleshooting_text: "TroubleshootingText",
    },
  ],
})

Response structure


resp.control.arn #=> String
resp.control.id #=> String
resp.control.type #=> String, one of "Standard", "Custom", "Core"
resp.control.name #=> String
resp.control.description #=> String
resp.control.testing_information #=> String
resp.control.action_plan_title #=> String
resp.control.action_plan_instructions #=> String
resp.control.control_sources #=> String
resp.control.control_mapping_sources #=> Array
resp.control.control_mapping_sources[0].source_id #=> String
resp.control.control_mapping_sources[0].source_name #=> String
resp.control.control_mapping_sources[0].source_description #=> String
resp.control.control_mapping_sources[0].source_set_up_option #=> String, one of "System_Controls_Mapping", "Procedural_Controls_Mapping"
resp.control.control_mapping_sources[0].source_type #=> String, one of "AWS_Cloudtrail", "AWS_Config", "AWS_Security_Hub", "AWS_API_Call", "MANUAL", "Common_Control", "Core_Control"
resp.control.control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST", "UPLOAD_FILE", "INPUT_TEXT"
resp.control.control_mapping_sources[0].source_keyword.keyword_value #=> String
resp.control.control_mapping_sources[0].source_frequency #=> String, one of "DAILY", "WEEKLY", "MONTHLY"
resp.control.control_mapping_sources[0].troubleshooting_text #=> String
resp.control.created_at #=> Time
resp.control.last_updated_at #=> Time
resp.control.created_by #=> String
resp.control.last_updated_by #=> String
resp.control.tags #=> Hash
resp.control.tags["TagKey"] #=> String
resp.control.state #=> String, one of "ACTIVE", "END_OF_SUPPORT"

Parameters:

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

    ({})

Options Hash (params):

  • :control_id (required, String)

    The identifier for the control.

  • :name (required, String)

    The name of the updated control.

  • :description (String)

    The optional description of the control.

  • :testing_information (String)

    The steps that you should follow to determine if the control is met.

  • :action_plan_title (String)

    The title of the action plan for remediating the control.

  • :action_plan_instructions (String)

    The recommended actions to carry out if the control isn't fulfilled.

  • :control_mapping_sources (required, Array<Types::ControlMappingSource>)

    The data mapping sources for the control.

Returns:

See Also:



3885
3886
3887
3888
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3885

def update_control(params = {}, options = {})
  req = build_request(:update_control, params)
  req.send_request(options)
end

#update_settings(params = {}) ⇒ Types::UpdateSettingsResponse

Updates Audit Manager settings for the current account.

Examples:

Request syntax with placeholder values


resp = client.update_settings({
  sns_topic: "SnsArn",
  default_assessment_reports_destination: {
    destination_type: "S3", # accepts S3
    destination: "S3Url",
  },
  default_process_owners: [
    {
      role_type: "PROCESS_OWNER", # required, accepts PROCESS_OWNER, RESOURCE_OWNER
      role_arn: "IamArn", # required
    },
  ],
  kms_key: "KmsKey",
  evidence_finder_enabled: false,
  deregistration_policy: {
    delete_resources: "ALL", # accepts ALL, DEFAULT
  },
  default_export_destination: {
    destination_type: "S3", # accepts S3
    destination: "S3Url",
  },
})

Response structure


resp.settings.is_aws_org_enabled #=> Boolean
resp.settings.sns_topic #=> String
resp.settings.default_assessment_reports_destination.destination_type #=> String, one of "S3"
resp.settings.default_assessment_reports_destination.destination #=> String
resp.settings.default_process_owners #=> Array
resp.settings.default_process_owners[0].role_type #=> String, one of "PROCESS_OWNER", "RESOURCE_OWNER"
resp.settings.default_process_owners[0].role_arn #=> String
resp.settings.kms_key #=> String
resp.settings.evidence_finder_enablement.event_data_store_arn #=> String
resp.settings.evidence_finder_enablement.enablement_status #=> String, one of "ENABLED", "DISABLED", "ENABLE_IN_PROGRESS", "DISABLE_IN_PROGRESS"
resp.settings.evidence_finder_enablement.backfill_status #=> String, one of "NOT_STARTED", "IN_PROGRESS", "COMPLETED"
resp.settings.evidence_finder_enablement.error #=> String
resp.settings.deregistration_policy.delete_resources #=> String, one of "ALL", "DEFAULT"
resp.settings.default_export_destination.destination_type #=> String, one of "S3"
resp.settings.default_export_destination.destination #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :sns_topic (String)

    The Amazon Simple Notification Service (Amazon SNS) topic that Audit Manager sends notifications to.

  • :default_assessment_reports_destination (Types::AssessmentReportsDestination)

    The default S3 destination bucket for storing assessment reports.

  • :default_process_owners (Array<Types::Role>)

    A list of the default audit owners.

  • :kms_key (String)

    The KMS key details.

  • :evidence_finder_enabled (Boolean)

    Specifies whether the evidence finder feature is enabled. Change this attribute to enable or disable evidence finder.

    When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s used to query your evidence data. As a result, you can’t re-enable evidence finder and use the feature again. Your only alternative is to deregister and then re-register Audit Manager.

  • :deregistration_policy (Types::DeregistrationPolicy)

    The deregistration policy for your Audit Manager data. You can use this attribute to determine how your data is handled when you deregister Audit Manager.

  • :default_export_destination (Types::DefaultExportDestination)

    The default S3 destination bucket for storing evidence finder exports.

Returns:

See Also:



3979
3980
3981
3982
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3979

def update_settings(params = {}, options = {})
  req = build_request(:update_settings, params)
  req.send_request(options)
end

#validate_assessment_report_integrity(params = {}) ⇒ Types::ValidateAssessmentReportIntegrityResponse

Validates the integrity of an assessment report in Audit Manager.

Examples:

Request syntax with placeholder values


resp = client.validate_assessment_report_integrity({
  s3_relative_path: "S3Url", # required
})

Response structure


resp.signature_valid #=> Boolean
resp.signature_algorithm #=> String
resp.signature_date_time #=> String
resp.signature_key_id #=> String
resp.validation_errors #=> Array
resp.validation_errors[0] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :s3_relative_path (required, String)

    The relative path of the Amazon S3 bucket that the assessment report is stored in.

Returns:

See Also:



4017
4018
4019
4020
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 4017

def validate_assessment_report_integrity(params = {}, options = {})
  req = build_request(:validate_assessment_report_integrity, params)
  req.send_request(options)
end