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.

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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:

[View source]

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

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