R/securityhub_service.R

Defines functions service securityhub

Documented in securityhub

# This file is generated by make.paws. Please do not edit here.
#' @importFrom paws.common new_handlers new_service set_config merge_config
NULL

#' AWS SecurityHub
#'
#' @description
#' Security Hub provides you with a comprehensive view of the security
#' state of your Amazon Web Services environment and resources. It also
#' provides you with the readiness status of your environment based on
#' controls from supported security standards. Security Hub collects
#' security data from Amazon Web Services accounts, services, and
#' integrated third-party products and helps you analyze security trends in
#' your environment to identify the highest priority security issues. For
#' more information about Security Hub, see the [*Security Hub User
#' Guide*](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html)
#' .
#' 
#' When you use operations in the Security Hub API, the requests are
#' executed only in the Amazon Web Services Region that is currently active
#' or in the specific Amazon Web Services Region that you specify in your
#' request. Any configuration or settings change that results from the
#' operation is applied only to that Region. To make the same change in
#' other Regions, run the same command for each Region in which you want to
#' apply the change.
#' 
#' For example, if your Region is set to `us-west-2`, when you use
#' [`create_members`][securityhub_create_members] to add a member account
#' to Security Hub, the association of the member account with the
#' administrator account is created only in the `us-west-2` Region.
#' Security Hub must be enabled for the member account in the same Region
#' that the invitation was sent from.
#' 
#' The following throttling limits apply to using Security Hub API
#' operations.
#' 
#' -   [`batch_enable_standards`][securityhub_batch_enable_standards] -
#'     `RateLimit` of 1 request per second. `BurstLimit` of 1 request per
#'     second.
#' 
#' -   [`get_findings`][securityhub_get_findings] - `RateLimit` of 3
#'     requests per second. `BurstLimit` of 6 requests per second.
#' 
#' -   [`batch_import_findings`][securityhub_batch_import_findings] -
#'     `RateLimit` of 10 requests per second. `BurstLimit` of 30 requests
#'     per second.
#' 
#' -   [`batch_update_findings`][securityhub_batch_update_findings] -
#'     `RateLimit` of 10 requests per second. `BurstLimit` of 30 requests
#'     per second.
#' 
#' -   [`update_standards_control`][securityhub_update_standards_control] -
#'     `RateLimit` of 1 request per second. `BurstLimit` of 5 requests per
#'     second.
#' 
#' -   All other operations - `RateLimit` of 10 requests per second.
#'     `BurstLimit` of 30 requests per second.
#'
#' @param
#' config
#' Optional configuration of credentials, endpoint, and/or region.
#' \itemize{
#' \item{\strong{credentials}:} {\itemize{
#' \item{\strong{creds}:} {\itemize{
#' \item{\strong{access_key_id}:} {AWS access key ID}
#' \item{\strong{secret_access_key}:} {AWS secret access key}
#' \item{\strong{session_token}:} {AWS temporary session token}
#' }}
#' \item{\strong{profile}:} {The name of a profile to use. If not given, then the default profile is used.}
#' \item{\strong{anonymous}:} {Set anonymous credentials.}
#' \item{\strong{endpoint}:} {The complete URL to use for the constructed client.}
#' \item{\strong{region}:} {The AWS Region used in instantiating the client.}
#' }}
#' \item{\strong{close_connection}:} {Immediately close all HTTP connections.}
#' \item{\strong{timeout}:} {The time in seconds till a timeout exception is thrown when attempting to make a connection. The default is 60 seconds.}
#' \item{\strong{s3_force_path_style}:} {Set this to `true` to force the request to use path-style addressing, i.e. `http://s3.amazonaws.com/BUCKET/KEY`.}
#' \item{\strong{sts_regional_endpoint}:} {Set sts regional endpoint resolver to regional or legacy \url{https://docs.aws.amazon.com/sdkref/latest/guide/feature-sts-regionalized-endpoints.html}}
#' }
#' @param
#' credentials
#' Optional credentials shorthand for the config parameter
#' \itemize{
#' \item{\strong{creds}:} {\itemize{
#' \item{\strong{access_key_id}:} {AWS access key ID}
#' \item{\strong{secret_access_key}:} {AWS secret access key}
#' \item{\strong{session_token}:} {AWS temporary session token}
#' }}
#' \item{\strong{profile}:} {The name of a profile to use. If not given, then the default profile is used.}
#' \item{\strong{anonymous}:} {Set anonymous credentials.}
#' }
#' @param
#' endpoint
#' Optional shorthand for complete URL to use for the constructed client.
#' @param
#' region
#' Optional shorthand for AWS Region used in instantiating the client.
#'
#' @section Service syntax:
#' ```
#' svc <- securityhub(
#'   config = list(
#'     credentials = list(
#'       creds = list(
#'         access_key_id = "string",
#'         secret_access_key = "string",
#'         session_token = "string"
#'       ),
#'       profile = "string",
#'       anonymous = "logical"
#'     ),
#'     endpoint = "string",
#'     region = "string",
#'     close_connection = "logical",
#'     timeout = "numeric",
#'     s3_force_path_style = "logical",
#'     sts_regional_endpoint = "string"
#'   ),
#'   credentials = list(
#'     creds = list(
#'       access_key_id = "string",
#'       secret_access_key = "string",
#'       session_token = "string"
#'     ),
#'     profile = "string",
#'     anonymous = "logical"
#'   ),
#'   endpoint = "string",
#'   region = "string"
#' )
#' ```
#'
#' @examples
#' \dontrun{
#' svc <- securityhub()
#' # The following example demonstrates how an account can accept an
#' # invitation from the Security Hub administrator account to be a member
#' # account. This operation is applicable only to member accounts that are
#' # not added through AWS Organizations.
#' svc$accept_administrator_invitation(
#'   AdministratorId = "123456789012",
#'   InvitationId = "7ab938c5d52d7904ad09f9e7c20cc4eb"
#' )
#' }
#'
#' @section Operations:
#' \tabular{ll}{
#'  \link[=securityhub_accept_administrator_invitation]{accept_administrator_invitation} \tab Accepts the invitation to be a member account and be monitored by the Security Hub administrator account that the invitation was sent from\cr
#'  \link[=securityhub_accept_invitation]{accept_invitation} \tab This method is deprecated\cr
#'  \link[=securityhub_batch_delete_automation_rules]{batch_delete_automation_rules} \tab Deletes one or more automation rules\cr
#'  \link[=securityhub_batch_disable_standards]{batch_disable_standards} \tab Disables the standards specified by the provided StandardsSubscriptionArns\cr
#'  \link[=securityhub_batch_enable_standards]{batch_enable_standards} \tab Enables the standards specified by the provided StandardsArn\cr
#'  \link[=securityhub_batch_get_automation_rules]{batch_get_automation_rules} \tab Retrieves a list of details for automation rules based on rule Amazon Resource Names (ARNs)\cr
#'  \link[=securityhub_batch_get_security_controls]{batch_get_security_controls} \tab Provides details about a batch of security controls for the current Amazon Web Services account and Amazon Web Services Region\cr
#'  \link[=securityhub_batch_get_standards_control_associations]{batch_get_standards_control_associations} \tab For a batch of security controls and standards, identifies whether each control is currently enabled or disabled in a standard\cr
#'  \link[=securityhub_batch_import_findings]{batch_import_findings} \tab Imports security findings generated by a finding provider into Security Hub\cr
#'  \link[=securityhub_batch_update_automation_rules]{batch_update_automation_rules} \tab Updates one or more automation rules based on rule Amazon Resource Names (ARNs) and input parameters\cr
#'  \link[=securityhub_batch_update_findings]{batch_update_findings} \tab Used by Security Hub customers to update information about their investigation into a finding\cr
#'  \link[=securityhub_batch_update_standards_control_associations]{batch_update_standards_control_associations} \tab For a batch of security controls and standards, this operation updates the enablement status of a control in a standard\cr
#'  \link[=securityhub_create_action_target]{create_action_target} \tab Creates a custom action target in Security Hub\cr
#'  \link[=securityhub_create_automation_rule]{create_automation_rule} \tab Creates an automation rule based on input parameters\cr
#'  \link[=securityhub_create_finding_aggregator]{create_finding_aggregator} \tab Used to enable finding aggregation\cr
#'  \link[=securityhub_create_insight]{create_insight} \tab Creates a custom insight in Security Hub\cr
#'  \link[=securityhub_create_members]{create_members} \tab Creates a member association in Security Hub between the specified accounts and the account used to make the request, which is the administrator account\cr
#'  \link[=securityhub_decline_invitations]{decline_invitations} \tab Declines invitations to become a member account\cr
#'  \link[=securityhub_delete_action_target]{delete_action_target} \tab Deletes a custom action target from Security Hub\cr
#'  \link[=securityhub_delete_finding_aggregator]{delete_finding_aggregator} \tab Deletes a finding aggregator\cr
#'  \link[=securityhub_delete_insight]{delete_insight} \tab Deletes the insight specified by the InsightArn\cr
#'  \link[=securityhub_delete_invitations]{delete_invitations} \tab Deletes invitations received by the Amazon Web Services account to become a member account\cr
#'  \link[=securityhub_delete_members]{delete_members} \tab Deletes the specified member accounts from Security Hub\cr
#'  \link[=securityhub_describe_action_targets]{describe_action_targets} \tab Returns a list of the custom action targets in Security Hub in your account\cr
#'  \link[=securityhub_describe_hub]{describe_hub} \tab Returns details about the Hub resource in your account, including the HubArn and the time when you enabled Security Hub\cr
#'  \link[=securityhub_describe_organization_configuration]{describe_organization_configuration} \tab Returns information about the Organizations configuration for Security Hub\cr
#'  \link[=securityhub_describe_products]{describe_products} \tab Returns information about product integrations in Security Hub\cr
#'  \link[=securityhub_describe_standards]{describe_standards} \tab Returns a list of the available standards in Security Hub\cr
#'  \link[=securityhub_describe_standards_controls]{describe_standards_controls} \tab Returns a list of security standards controls\cr
#'  \link[=securityhub_disable_import_findings_for_product]{disable_import_findings_for_product} \tab Disables the integration of the specified product with Security Hub\cr
#'  \link[=securityhub_disable_organization_admin_account]{disable_organization_admin_account} \tab Disables a Security Hub administrator account\cr
#'  \link[=securityhub_disable_security_hub]{disable_security_hub} \tab Disables Security Hub in your account only in the current Amazon Web Services Region\cr
#'  \link[=securityhub_disassociate_from_administrator_account]{disassociate_from_administrator_account} \tab Disassociates the current Security Hub member account from the associated administrator account\cr
#'  \link[=securityhub_disassociate_from_master_account]{disassociate_from_master_account} \tab This method is deprecated\cr
#'  \link[=securityhub_disassociate_members]{disassociate_members} \tab Disassociates the specified member accounts from the associated administrator account\cr
#'  \link[=securityhub_enable_import_findings_for_product]{enable_import_findings_for_product} \tab Enables the integration of a partner product with Security Hub\cr
#'  \link[=securityhub_enable_organization_admin_account]{enable_organization_admin_account} \tab Designates the Security Hub administrator account for an organization\cr
#'  \link[=securityhub_enable_security_hub]{enable_security_hub} \tab Enables Security Hub for your account in the current Region or the Region you specify in the request\cr
#'  \link[=securityhub_get_administrator_account]{get_administrator_account} \tab Provides the details for the Security Hub administrator account for the current member account\cr
#'  \link[=securityhub_get_enabled_standards]{get_enabled_standards} \tab Returns a list of the standards that are currently enabled\cr
#'  \link[=securityhub_get_finding_aggregator]{get_finding_aggregator} \tab Returns the current finding aggregation configuration\cr
#'  \link[=securityhub_get_finding_history]{get_finding_history} \tab Returns history for a Security Hub finding in the last 90 days\cr
#'  \link[=securityhub_get_findings]{get_findings} \tab Returns a list of findings that match the specified criteria\cr
#'  \link[=securityhub_get_insight_results]{get_insight_results} \tab Lists the results of the Security Hub insight specified by the insight ARN\cr
#'  \link[=securityhub_get_insights]{get_insights} \tab Lists and describes insights for the specified insight ARNs\cr
#'  \link[=securityhub_get_invitations_count]{get_invitations_count} \tab Returns the count of all Security Hub membership invitations that were sent to the current member account, not including the currently accepted invitation\cr
#'  \link[=securityhub_get_master_account]{get_master_account} \tab This method is deprecated\cr
#'  \link[=securityhub_get_members]{get_members} \tab Returns the details for the Security Hub member accounts for the specified account IDs\cr
#'  \link[=securityhub_invite_members]{invite_members} \tab Invites other Amazon Web Services accounts to become member accounts for the Security Hub administrator account that the invitation is sent from\cr
#'  \link[=securityhub_list_automation_rules]{list_automation_rules} \tab A list of automation rules and their metadata for the calling account\cr
#'  \link[=securityhub_list_enabled_products_for_import]{list_enabled_products_for_import} \tab Lists all findings-generating solutions (products) that you are subscribed to receive findings from in Security Hub\cr
#'  \link[=securityhub_list_finding_aggregators]{list_finding_aggregators} \tab If finding aggregation is enabled, then ListFindingAggregators returns the ARN of the finding aggregator\cr
#'  \link[=securityhub_list_invitations]{list_invitations} \tab Lists all Security Hub membership invitations that were sent to the current Amazon Web Services account\cr
#'  \link[=securityhub_list_members]{list_members} \tab Lists details about all member accounts for the current Security Hub administrator account\cr
#'  \link[=securityhub_list_organization_admin_accounts]{list_organization_admin_accounts} \tab Lists the Security Hub administrator accounts\cr
#'  \link[=securityhub_list_security_control_definitions]{list_security_control_definitions} \tab Lists all of the security controls that apply to a specified standard\cr
#'  \link[=securityhub_list_standards_control_associations]{list_standards_control_associations} \tab Specifies whether a control is currently enabled or disabled in each enabled standard in the calling account\cr
#'  \link[=securityhub_list_tags_for_resource]{list_tags_for_resource} \tab Returns a list of tags associated with a resource\cr
#'  \link[=securityhub_tag_resource]{tag_resource} \tab Adds one or more tags to a resource\cr
#'  \link[=securityhub_untag_resource]{untag_resource} \tab Removes one or more tags from a resource\cr
#'  \link[=securityhub_update_action_target]{update_action_target} \tab Updates the name and description of a custom action target in Security Hub\cr
#'  \link[=securityhub_update_finding_aggregator]{update_finding_aggregator} \tab Updates the finding aggregation configuration\cr
#'  \link[=securityhub_update_findings]{update_findings} \tab UpdateFindings is deprecated\cr
#'  \link[=securityhub_update_insight]{update_insight} \tab Updates the Security Hub insight identified by the specified insight ARN\cr
#'  \link[=securityhub_update_organization_configuration]{update_organization_configuration} \tab Used to update the configuration related to Organizations\cr
#'  \link[=securityhub_update_security_hub_configuration]{update_security_hub_configuration} \tab Updates configuration options for Security Hub\cr
#'  \link[=securityhub_update_standards_control]{update_standards_control} \tab Used to control whether an individual security standard control is enabled or disabled
#' }
#'
#' @return
#' A client for the service. You can call the service's operations using
#' syntax like `svc$operation(...)`, where `svc` is the name you've assigned
#' to the client. The available operations are listed in the
#' Operations section.
#'
#' @rdname securityhub
#' @export
securityhub <- function(config = list(), credentials = list(), endpoint = NULL, region = NULL) {
  config <- merge_config(
    config,
    list(
      credentials = credentials,
      endpoint = endpoint,
      region = region
    )
  )
  svc <- .securityhub$operations
  svc <- set_config(svc, config)
  return(svc)
}

# Private API objects: metadata, handlers, interfaces, etc.
.securityhub <- list()

.securityhub$operations <- list()

.securityhub$metadata <- list(
  service_name = "securityhub",
  endpoints = list("*" = list(endpoint = "securityhub.{region}.amazonaws.com", global = FALSE), "cn-*" = list(endpoint = "securityhub.{region}.amazonaws.com.cn", global = FALSE), "us-iso-*" = list(endpoint = "securityhub.{region}.c2s.ic.gov", global = FALSE), "us-isob-*" = list(endpoint = "securityhub.{region}.sc2s.sgov.gov", global = FALSE)),
  service_id = "SecurityHub",
  api_version = "2018-10-26",
  signing_name = "securityhub",
  json_version = "1.1",
  target_prefix = ""
)

.securityhub$service <- function(config = list()) {
  handlers <- new_handlers("restjson", "v4")
  new_service(.securityhub$metadata, handlers, config)
}

Try the paws.security.identity package in your browser

Any scripts or data that you put into this service are public.

paws.security.identity documentation built on Sept. 12, 2023, 1:10 a.m.