Class: Aws::AuditManager::Client

Inherits:
Seahorse::Client::Base
  • Object
show all
Includes:
ClientStubs
Defined in:
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](/sdk-for-ruby/v3/developer-guide/setup-config.html).

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

Class Attribute Summary collapse

API Operations collapse

Class Method Summary collapse

Instance Method Summary collapse

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`

    • The ‘:access_key_id`, `:secret_access_key`, and `:session_token` options.

    • ENV, ENV

    • ‘~/.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::InstanceProfileCredentails` or `Aws::ECSCredentials` to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV 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:

  • :access_key_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 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:

  • :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.

  • :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 ‘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_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.



422
423
424
# File 'lib/aws-sdk-auditmanager/client.rb', line 422

def initialize(*args)
  super
end

Class Attribute Details

.identifierObject (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



4024
4025
4026
# File 'lib/aws-sdk-auditmanager/client.rb', line 4024

def identifier
  @identifier
end

Class Method Details

.errors_moduleObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



4027
4028
4029
# File 'lib/aws-sdk-auditmanager/client.rb', line 4027

def errors_module
  Errors
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:



450
451
452
453
# File 'lib/aws-sdk-auditmanager/client.rb', line 450

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:



493
494
495
496
# File 'lib/aws-sdk-auditmanager/client.rb', line 493

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:



551
552
553
554
# File 'lib/aws-sdk-auditmanager/client.rb', line 551

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:



586
587
588
589
# File 'lib/aws-sdk-auditmanager/client.rb', line 586

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:



629
630
631
632
# File 'lib/aws-sdk-auditmanager/client.rb', line 629

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].

[1]: docs.aws.amazon.com/audit-manager/latest/userguide/upload-evidence.html#supported-manual-evidence-files [2]: docs.aws.amazon.com/audit-manager/latest/userguide/service-quotas.html

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:



705
706
707
708
# File 'lib/aws-sdk-auditmanager/client.rb', line 705

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

#build_request(operation_name, params = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Parameters:

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


4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
# File 'lib/aws-sdk-auditmanager/client.rb', line 4002

def build_request(operation_name, params = {})
  handlers = @handlers.for(operation_name)
  context = Seahorse::Client::RequestContext.new(
    operation_name: operation_name,
    operation: config.api.operation(operation_name),
    client: self,
    params: params,
    config: config)
  context[:gem_name] = 'aws-sdk-auditmanager'
  context[:gem_version] = '1.51.0'
  Seahorse::Client::Request.new(handlers, context)
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.

    <note markdown=“1”> 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.

    </note>
    
  • :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:



873
874
875
876
# File 'lib/aws-sdk-auditmanager/client.rb', line 873

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:



972
973
974
975
# File 'lib/aws-sdk-auditmanager/client.rb', line 972

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):

Returns:

See Also:



1041
1042
1043
1044
# File 'lib/aws-sdk-auditmanager/client.rb', line 1041

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:



1133
1134
1135
1136
# File 'lib/aws-sdk-auditmanager/client.rb', line 1133

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:



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

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:



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

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:



1204
1205
1206
1207
# File 'lib/aws-sdk-auditmanager/client.rb', line 1204

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*.

[1]: docs.aws.amazon.com/audit-manager/latest/userguide/security_iam_id-based-policy-examples.html#full-administrator-access-assessment-report-destination [2]: docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList

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:



1258
1259
1260
1261
# File 'lib/aws-sdk-auditmanager/client.rb', line 1258

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:



1286
1287
1288
1289
# File 'lib/aws-sdk-auditmanager/client.rb', line 1286

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.

<note markdown=“1”> 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][2] in

the *Audit Manager User Guide*.

</note>

[1]: docs.aws.amazon.com/audit-manager/latest/APIReference/API_UpdateSettings.html [2]: docs.aws.amazon.com/audit-manager/latest/userguide/data-protection.html

Examples:

Response structure


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

Parameters:

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

    ({})

Returns:

See Also:



1321
1322
1323
1324
# File 'lib/aws-sdk-auditmanager/client.rb', line 1321

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  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:

  • DeleteAssessment][2

    (see also: [Deleting an assessment] in the

    *Audit Manager User Guide*)

  • DeleteAssessmentFramework][4

    (see also: [Deleting a custom

    framework] in the *Audit Manager User Guide*)

  • DeleteAssessmentFrameworkShare][6

    (see also: [Deleting a share

    request] in the *Audit Manager User Guide*)

  • DeleteAssessmentReport][8

    (see also: [Deleting an assessment

    report] in the *Audit Manager User Guide*)

  • DeleteControl][10

    (see also: [Deleting a custom control] in

    the *Audit Manager User Guide*)

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.

[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/query-eds-disable-termination.html [2]: docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessment.html [3]: docs.aws.amazon.com/audit-manager/latest/userguide/delete-assessment.html [4]: docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentFramework.html [5]: docs.aws.amazon.com/audit-manager/latest/userguide/delete-custom-framework.html [6]: docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentFrameworkShare.html [7]: docs.aws.amazon.com/audit-manager/latest/userguide/deleting-shared-framework-requests.html [8]: docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteAssessmentReport.html [9]: docs.aws.amazon.com/audit-manager/latest/userguide/generate-assessment-report.html#delete-assessment-report-steps [10]: docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeleteControl.html [11]: docs.aws.amazon.com/audit-manager/latest/userguide/delete-controls.html

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:



1414
1415
1416
1417
# File 'lib/aws-sdk-auditmanager/client.rb', line 1414

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:



1441
1442
1443
1444
# File 'lib/aws-sdk-auditmanager/client.rb', line 1441

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:



1460
1461
1462
1463
# File 'lib/aws-sdk-auditmanager/client.rb', line 1460

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:



1567
1568
1569
1570
# File 'lib/aws-sdk-auditmanager/client.rb', line 1567

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:



1638
1639
1640
1641
# File 'lib/aws-sdk-auditmanager/client.rb', line 1638

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:



1671
1672
1673
1674
# File 'lib/aws-sdk-auditmanager/client.rb', line 1671

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:



1725
1726
1727
1728
# File 'lib/aws-sdk-auditmanager/client.rb', line 1725

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:



1778
1779
1780
1781
# File 'lib/aws-sdk-auditmanager/client.rb', line 1778

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:



1822
1823
1824
1825
# File 'lib/aws-sdk-auditmanager/client.rb', line 1822

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:



1880
1881
1882
1883
# File 'lib/aws-sdk-auditmanager/client.rb', line 1880

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:



1948
1949
1950
1951
# File 'lib/aws-sdk-auditmanager/client.rb', line 1948

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 ][1

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].

[1]: docs.aws.amazon.com/audit-manager/latest/userguide/upload-evidence.html#how-to-upload-manual-evidence-files [2]: docs.aws.amazon.com/audit-manager/latest/userguide/upload-evidence.html#supported-manual-evidence-files [3]: docs.aws.amazon.com/audit-manager/latest/userguide/service-quotas.html

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:



2005
2006
2007
2008
# File 'lib/aws-sdk-auditmanager/client.rb', line 2005

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:



2058
2059
2060
2061
# File 'lib/aws-sdk-auditmanager/client.rb', line 2058

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:



2118
2119
2120
2121
# File 'lib/aws-sdk-auditmanager/client.rb', line 2118

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:



2186
2187
2188
2189
# File 'lib/aws-sdk-auditmanager/client.rb', line 2186

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:



2212
2213
2214
2215
# File 'lib/aws-sdk-auditmanager/client.rb', line 2212

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:



2245
2246
2247
2248
# File 'lib/aws-sdk-auditmanager/client.rb', line 2245

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:



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

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.

<note markdown=“1”> 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.

</note>

[1]: docs.aws.amazon.com/audit-manager/latest/userguide/evidence-collection-issues.html#unable-to-edit-services

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:



2308
2309
2310
2311
# File 'lib/aws-sdk-auditmanager/client.rb', line 2308

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:



2350
2351
2352
2353
# File 'lib/aws-sdk-auditmanager/client.rb', line 2350

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.

<note markdown=“1”> 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.

</note>

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` ][1] in the Amazon Web Services Control Catalog API Reference.

    [1]: docs.aws.amazon.com/controlcatalog/latest/APIReference/API_ListDomains.html

  • :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:



2420
2421
2422
2423
# File 'lib/aws-sdk-auditmanager/client.rb', line 2420

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:



2478
2479
2480
2481
# File 'lib/aws-sdk-auditmanager/client.rb', line 2478

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:



2532
2533
2534
2535
# File 'lib/aws-sdk-auditmanager/client.rb', line 2532

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:



2577
2578
2579
2580
# File 'lib/aws-sdk-auditmanager/client.rb', line 2577

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:



2639
2640
2641
2642
# File 'lib/aws-sdk-auditmanager/client.rb', line 2639

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` ][1] in the Amazon Web Services Control Catalog API Reference.

<note markdown=“1”> 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.

</note>

[1]: docs.aws.amazon.com/controlcatalog/latest/APIReference/API_ListDomains.html

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:



2701
2702
2703
2704
# File 'lib/aws-sdk-auditmanager/client.rb', line 2701

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` ][1] in the Amazon Web Services Control Catalog API Reference.

<note markdown=“1”> 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.

</note>

[1]: docs.aws.amazon.com/controlcatalog/latest/APIReference/API_ListDomains.html

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:



2767
2768
2769
2770
# File 'lib/aws-sdk-auditmanager/client.rb', line 2767

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.

<note markdown=“1”> 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.

</note>

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` ][1] in the Amazon Web Services Control Catalog API Reference.

    [1]: docs.aws.amazon.com/controlcatalog/latest/APIReference/API_ListDomains.html

  • :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:



2831
2832
2833
2834
# File 'lib/aws-sdk-auditmanager/client.rb', line 2831

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` ][1], [ `ListObjectives` ][2], and [ `ListCommonControls` ][3].

    <note markdown=“1”> 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.

    </note>
    

    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.

    [1]: docs.aws.amazon.com/controlcatalog/latest/APIReference/API_ListDomains.html [2]: docs.aws.amazon.com/controlcatalog/latest/APIReference/API_ListObjectives.html [3]: docs.aws.amazon.com/controlcatalog/latest/APIReference/API_ListCommonControls.html

Returns:

See Also:



2906
2907
2908
2909
# File 'lib/aws-sdk-auditmanager/client.rb', line 2906

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:



2949
2950
2951
2952
# File 'lib/aws-sdk-auditmanager/client.rb', line 2949

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:



2994
2995
2996
2997
# File 'lib/aws-sdk-auditmanager/client.rb', line 2994

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:



3023
3024
3025
3026
# File 'lib/aws-sdk-auditmanager/client.rb', line 3023

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:



3055
3056
3057
3058
# File 'lib/aws-sdk-auditmanager/client.rb', line 3055

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:



3086
3087
3088
3089
# File 'lib/aws-sdk-auditmanager/client.rb', line 3086

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*.

[1]: docs.aws.amazon.com/audit-manager/latest/userguide/framework-sharing.html#framework-sharing-resend [2]: docs.aws.amazon.com/audit-manager/latest/userguide/share-custom-framework-concepts-and-terminology.html#eligibility

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:



3184
3185
3186
3187
# File 'lib/aws-sdk-auditmanager/client.rb', line 3184

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:



3212
3213
3214
3215
# File 'lib/aws-sdk-auditmanager/client.rb', line 3212

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:



3238
3239
3240
3241
# File 'lib/aws-sdk-auditmanager/client.rb', line 3238

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:



3384
3385
3386
3387
# File 'lib/aws-sdk-auditmanager/client.rb', line 3384

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:



3440
3441
3442
3443
# File 'lib/aws-sdk-auditmanager/client.rb', line 3440

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:



3513
3514
3515
3516
# File 'lib/aws-sdk-auditmanager/client.rb', line 3513

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:



3611
3612
3613
3614
# File 'lib/aws-sdk-auditmanager/client.rb', line 3611

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:



3662
3663
3664
3665
# File 'lib/aws-sdk-auditmanager/client.rb', line 3662

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:



3770
3771
3772
3773
# File 'lib/aws-sdk-auditmanager/client.rb', line 3770

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:



3861
3862
3863
3864
# File 'lib/aws-sdk-auditmanager/client.rb', line 3861

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][2

    Audit Manager.

    [1]: docs.aws.amazon.com/audit-manager/latest/APIReference/API_DeregisterAccount.html [2]: docs.aws.amazon.com/audit-manager/latest/APIReference/API_RegisterAccount.html

  • :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:



3955
3956
3957
3958
# File 'lib/aws-sdk-auditmanager/client.rb', line 3955

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:



3993
3994
3995
3996
# File 'lib/aws-sdk-auditmanager/client.rb', line 3993

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

#waiter_namesObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Deprecated.


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

def waiter_names
  []
end