Class: Aws::AuditManager::Client

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

Overview

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

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

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

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

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

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

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :credentials (required, Aws::CredentialProvider)

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

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

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

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

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

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

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

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

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

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

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

    • Aws.config[:credentials]
    • The :access_key_id, :secret_access_key, and :session_token options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • ~/.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['AWS_EC2_METADATA_DISABLED'] to true.
  • :region (required, String)

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

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :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.

  • :endpoint (String)

    The client endpoint is normally constructed from the :region option. You should only configure an :endpoint when connecting to test or custom endpoints. This should be a valid HTTP(S) URI.

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

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

  • :retry_backoff (Proc)

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

  • :retry_base_delay (Float) — default: 0.3

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

  • :retry_jitter (Symbol) — default: :none

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

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

  • :retry_limit (Integer) — default: 3

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

  • :retry_max_delay (Integer) — default: 0

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

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

    Specifies which retry algorithm to use. Values are:

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

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

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

  • :secret_access_key (String)
  • :session_token (String)
  • :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_proxy (URI::HTTP, String)

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

  • :http_open_timeout (Float) — default: 15

    The number of seconds to wait when opening a HTTP session before raising a Timeout::Error.

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

  • :ssl_timeout (Float) — default: nil

    Sets the SSL timeout in seconds.

  • :http_wire_trace (Boolean) — default: false

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

  • :ssl_verify_peer (Boolean) — default: true

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

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



365
366
367
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 365

def initialize(*args)
  super
end

Instance Method Details

#associate_assessment_report_evidence_folder(params = {}) ⇒ Struct

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

Examples:

Request syntax with placeholder values


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

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :evidence_folder_id (required, String)

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

Returns:

  • (Struct)

    Returns an empty response.

See Also:



393
394
395
396
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 393

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:



436
437
438
439
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 436

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:



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

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:



529
530
531
532
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 529

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:



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

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

Uploads one or more pieces of evidence to a control in an Audit Manager assessment. You can upload manual evidence from any Amazon Simple Storage Service (Amazon S3) bucket by specifying the S3 URI of the evidence.

You must upload manual evidence to your S3 bucket before you can upload it to your assessment. For instructions, see CreateBucket and PutObject in the Amazon Simple Storage Service API Reference.

The following restrictions apply to this action:

  • Maximum size of an individual evidence file: 100 MB

  • Number of daily manual evidence uploads per control: 100

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

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

Examples:

Request syntax with placeholder values


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

Response structure


resp.errors #=> Array
resp.errors[0].manual_evidence.s3_resource_path #=> 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:



646
647
648
649
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 646

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

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

Creates an assessment in Audit Manager.

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the assessment to be created.

  • :description (String)

    The optional description of the assessment to be created.

  • :assessment_reports_destination (required, Types::AssessmentReportsDestination)

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

  • :scope (required, Types::Scope)

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

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



800
801
802
803
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 800

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"
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"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST"
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.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:



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

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

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

Creates an assessment report for the specified assessment.

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the new assessment report.

  • :description (String)

    The description of the assessment report.

  • :assessment_id (required, String)

    The identifier for the assessment.

  • :query_statement (String)

    A SQL statement that represents an evidence finder query.

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

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

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

Returns:

See Also:



967
968
969
970
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 967

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
      source_keyword: {
        keyword_input_type: "SELECT_FROM_LIST", # accepts SELECT_FROM_LIST
        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"
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"
resp.control.control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST"
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

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:



1058
1059
1060
1061
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1058

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:



1080
1081
1082
1083
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1080

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:



1102
1103
1104
1105
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1102

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:



1129
1130
1131
1132
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1129

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

#delete_assessment_report(params = {}) ⇒ Struct

Deletes an assessment report in Audit Manager.

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

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

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

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

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

Examples:

Request syntax with placeholder values


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

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the assessment.

  • :assessment_report_id (required, String)

    The unique identifier for the assessment report.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1183
1184
1185
1186
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1183

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.

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:



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

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

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

Deregisters an account in Audit Manager.

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

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

Examples:

Response structure


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

Parameters:

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

    ({})

Returns:

See Also:



1240
1241
1242
1243
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1240

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

#deregister_organization_admin_account(params = {}) ⇒ Struct

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

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

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

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

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

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

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

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

Examples:

Request syntax with placeholder values


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

Parameters:

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

    ({})

Options Hash (params):

  • :admin_account_id (String)

    The identifier for the administrator account.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1333
1334
1335
1336
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1333

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:



1360
1361
1362
1363
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1360

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

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



1379
1380
1381
1382
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1379

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

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

Returns an assessment from Audit Manager.

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:



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

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

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

Returns a framework from Audit Manager.

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"
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"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST"
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.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:



1556
1557
1558
1559
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1556

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

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



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

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

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



1643
1644
1645
1646
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1643

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

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

Returns a control from Audit Manager.

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"
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"
resp.control.control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST"
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

Parameters:

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

    ({})

Options Hash (params):

  • :control_id (required, String)

    The identifier for the control.

Returns:

See Also:



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

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

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

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



1739
1740
1741
1742
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1739

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

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

Returns evidence from Audit Manager.

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:



1797
1798
1799
1800
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1797

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

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

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



1866
1867
1868
1869
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1866

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

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

Returns an evidence folder from the 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:



1920
1921
1922
1923
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1920

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

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



1980
1981
1982
1983
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 1980

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

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



2048
2049
2050
2051
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2048

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:



2074
2075
2076
2077
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2074

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:



2107
2108
2109
2110
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2107

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

Returns the name of the delegated Amazon Web Services administrator account for the organization.

Examples:

Response structure


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

Parameters:

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

    ({})

Returns:

See Also:



2129
2130
2131
2132
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2129

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

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

Returns a list of all of the Amazon Web Services that you can choose to include in your assessment. When you create an assessment, specify which of these services you want to include to narrow the assessment's scope.

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:



2160
2161
2162
2163
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2160

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

Returns the settings for the 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
})

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"

Parameters:

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

    ({})

Options Hash (params):

  • :attribute (required, String)

    The list of setting attribute enum values.

Returns:

See Also:



2200
2201
2202
2203
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2200

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

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

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

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

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

Examples:

Request syntax with placeholder values


resp = client.list_assessment_control_insights_by_control_domain({
  control_domain_id: "UUID", # 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.

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



2261
2262
2263
2264
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2261

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:



2319
2320
2321
2322
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2319

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:



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

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:



2418
2419
2420
2421
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2418

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:



2480
2481
2482
2483
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2480

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.

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

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

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String)

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

  • :max_results (Integer)

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

Returns:

See Also:



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

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.

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

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

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :assessment_id (required, String)

    The unique identifier for the active assessment.

  • :next_token (String)

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

  • :max_results (Integer)

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

Returns:

See Also:



2590
2591
2592
2593
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2590

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

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

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

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

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

Examples:

Request syntax with placeholder values


resp = client.list_control_insights_by_control_domain({
  control_domain_id: "UUID", # 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.

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



2645
2646
2647
2648
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2645

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
  next_token: "Token",
  max_results: 1,
})

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)

    The type of control, such as a standard control or a custom 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:



2692
2693
2694
2695
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2692

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:



2735
2736
2737
2738
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2735

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:



2780
2781
2782
2783
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2780

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:



2809
2810
2811
2812
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2809

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:



2841
2842
2843
2844
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2841

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:



2872
2873
2874
2875
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2872

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

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

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

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

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

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

  • The sender revokes the share request.

  • The recipient declines the share request.

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

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

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

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

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

Examples:

Request syntax with placeholder values


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

Response structure


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

Parameters:

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

    ({})

Options Hash (params):

  • :framework_id (required, String)

    The unique identifier for the custom framework to be shared.

  • :destination_account (required, String)

    The Amazon Web Services account of the recipient.

  • :destination_region (required, String)

    The Amazon Web Services Region of the recipient.

  • :comment (String)

    An optional comment from the sender about the share request.

Returns:

See Also:



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

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:



2998
2999
3000
3001
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 2998

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:



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

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:



3170
3171
3172
3173
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3170

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:



3226
3227
3228
3229
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3226

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:



3299
3300
3301
3302
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3299

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"
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"
resp.framework.control_sets[0].controls[0].control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST"
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.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:



3396
3397
3398
3399
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3396

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:



3447
3448
3449
3450
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3447

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:



3555
3556
3557
3558
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3555

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
      source_keyword: {
        keyword_input_type: "SELECT_FROM_LIST", # accepts SELECT_FROM_LIST
        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"
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"
resp.control.control_mapping_sources[0].source_keyword.keyword_input_type #=> String, one of "SELECT_FROM_LIST"
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

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:



3645
3646
3647
3648
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3645

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
  },
})

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"

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 storage destination for assessment reports.

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

    A list of the default audit owners.

  • :kms_key (String)

    The KMS key details.

  • :evidence_finder_enabled (Boolean)

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

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

  • :deregistration_policy (Types::DeregistrationPolicy)

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

Returns:

See Also:



3730
3731
3732
3733
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3730

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:



3768
3769
3770
3771
# File 'gems/aws-sdk-auditmanager/lib/aws-sdk-auditmanager/client.rb', line 3768

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