types

package
v0.26.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 1, 2020 License: Apache-2.0 Imports: 3 Imported by: 22

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessDeniedException

type AccessDeniedException struct {
	Message *string

	Code *string
}

You don't have permission to perform the action specified in the request.

func (*AccessDeniedException) Error

func (e *AccessDeniedException) Error() string

func (*AccessDeniedException) ErrorCode

func (e *AccessDeniedException) ErrorCode() string

func (*AccessDeniedException) ErrorFault

func (e *AccessDeniedException) ErrorFault() smithy.ErrorFault

func (*AccessDeniedException) ErrorMessage

func (e *AccessDeniedException) ErrorMessage() string

type AccountDetails

type AccountDetails struct {

	// The ID of an AWS account.
	AccountId *string

	// The email of an AWS account.
	Email *string
}

The details of an AWS account.

type ActionTarget

type ActionTarget struct {

	// The ARN for the target action.
	//
	// This member is required.
	ActionTargetArn *string

	// The description of the target action.
	//
	// This member is required.
	Description *string

	// The name of the action target.
	//
	// This member is required.
	Name *string
}

An ActionTarget object.

type AvailabilityZone

type AvailabilityZone struct {

	// The ID of the subnet. You can specify one subnet per Availability Zone.
	SubnetId *string

	// The name of the Availability Zone.
	ZoneName *string
}

Information about an Availability Zone.

type AwsAutoScalingAutoScalingGroupDetails

type AwsAutoScalingAutoScalingGroupDetails struct {

	// The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before it
	// checks the health status of an EC2 instance that has come into service.
	HealthCheckGracePeriod *int32

	// The service to use for the health checks.
	HealthCheckType *string

	// The list of load balancers associated with the group.
	LoadBalancerNames []*string

	// The datetime when the auto scaling group was created.
	CreatedTime *string

	// The name of the launch configuration.
	LaunchConfigurationName *string
}

Provides details about an auto scaling group.

type AwsCloudFrontDistributionDetails

type AwsCloudFrontDistributionDetails struct {

	// The date and time that the distribution was last modified.
	LastModifiedTime *string

	// A unique identifier that specifies the AWS WAF web ACL, if any, to associate
	// with this distribution.
	WebAclId *string

	// The domain name corresponding to the distribution.
	DomainName *string

	// The entity tag is a hash of the object.
	ETag *string

	// Indicates the current status of the distribution.
	Status *string

	// A complex type that controls whether access logs are written for the
	// distribution.
	Logging *AwsCloudFrontDistributionLogging

	// A complex type that contains information about origins for this distribution.
	Origins *AwsCloudFrontDistributionOrigins
}

A distribution configuration.

type AwsCloudFrontDistributionLogging

type AwsCloudFrontDistributionLogging struct {

	// With this field, you can enable or disable the selected distribution.
	Enabled *bool

	// An optional string that you want CloudFront to use as a prefix to the access log
	// filenames for this distribution.
	Prefix *string

	// Specifies whether you want CloudFront to include cookies in access logs.
	IncludeCookies *bool

	// The Amazon S3 bucket to store the access logs in.
	Bucket *string
}

A complex type that controls whether access logs are written for the distribution.

type AwsCloudFrontDistributionOriginItem

type AwsCloudFrontDistributionOriginItem struct {

	// A unique identifier for the origin or origin group.
	Id *string

	// Amazon S3 origins: The DNS name of the Amazon S3 bucket from which you want
	// CloudFront to get objects for this origin.
	DomainName *string

	// An optional element that causes CloudFront to request your content from a
	// directory in your Amazon S3 bucket or your custom origin.
	OriginPath *string
}

A complex type that describes the Amazon S3 bucket, HTTP server (for example, a web server), Amazon Elemental MediaStore, or other server from which CloudFront gets your files.

type AwsCloudFrontDistributionOrigins

type AwsCloudFrontDistributionOrigins struct {

	// A complex type that contains origins or origin groups for this distribution.
	Items []*AwsCloudFrontDistributionOriginItem
}

A complex type that contains information about origins and origin groups for this distribution.

type AwsCodeBuildProjectDetails

type AwsCodeBuildProjectDetails struct {

	// Information about the build environment for this build project.
	Environment *AwsCodeBuildProjectEnvironment

	// The name of the build project.
	Name *string

	// Information about the build input source code for this build project.
	Source *AwsCodeBuildProjectSource

	// The ARN of the IAM role that enables AWS CodeBuild to interact with dependent
	// AWS services on behalf of the AWS account.
	ServiceRole *string

	// The AWS Key Management Service (AWS KMS) customer master key (CMK) used to
	// encrypt the build output artifacts. You can specify either the Amazon Resource
	// Name (ARN) of the CMK or, if available, the CMK alias (using the format
	// alias/alias-name).
	EncryptionKey *string

	// Information about the VPC configuration that AWS CodeBuild accesses.
	VpcConfig *AwsCodeBuildProjectVpcConfig
}

Information about an AWS CodeBuild project.

type AwsCodeBuildProjectEnvironment

type AwsCodeBuildProjectEnvironment struct {

	// The certificate to use with this build project.
	Certificate *string

	// The credentials for access to a private registry.
	RegistryCredential *AwsCodeBuildProjectEnvironmentRegistryCredential

	// The type of credentials AWS CodeBuild uses to pull images in your build. Valid
	// values:
	//
	//     * CODEBUILD specifies that AWS CodeBuild uses its own credentials.
	// This requires that you modify your ECR repository policy to trust the AWS
	// CodeBuild service principal.
	//
	//     * SERVICE_ROLE specifies that AWS CodeBuild
	// uses your build project's service role.
	//
	// When you use a cross-account or private
	// registry image, you must use SERVICE_ROLE credentials. When you use an AWS
	// CodeBuild curated image, you must use CODEBUILD credentials.
	ImagePullCredentialsType *string

	// The type of build environment to use for related builds. The environment type
	// ARM_CONTAINER is available only in Regions US East (N. Virginia), US East
	// (Ohio), US West (Oregon), Europe (Ireland), Asia Pacific (Mumbai), Asia Pacific
	// (Tokyo), Asia Pacific (Sydney), and Europe (Frankfurt). The environment type
	// LINUX_CONTAINER with compute type build.general1.2xlarge is available only in
	// Regions US East (N. Virginia), US East (N. Virginia), US West (Oregon), Canada
	// (Central), Europe (Ireland), Europe (London), Europe (Frankfurt), Asia Pacific
	// (Tokyo), Asia Pacific (Seoul), Asia Pacific (Singapore), Asia Pacific (Sydney),
	// China (Beijing), and China (Ningxia). The environment type LINUX_GPU_CONTAINER
	// is available only in Regions US East (N. Virginia), US East (N. Virginia), US
	// West (Oregon), Canada (Central), Europe (Ireland), Europe (London), Europe
	// (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia Pacific
	// (Singapore), Asia Pacific (Sydney), China (Beijing), and China (Ningxia). Valid
	// values: WINDOWS_CONTAINER | LINUX_CONTAINER | LINUX_GPU_CONTAINER |
	// ARM_CONTAINER
	Type *string
}

Information about the build environment for this build project.

type AwsCodeBuildProjectEnvironmentRegistryCredential

type AwsCodeBuildProjectEnvironmentRegistryCredential struct {

	// The service that created the credentials to access a private Docker registry.
	// The valid value, SECRETS_MANAGER, is for AWS Secrets Manager.
	CredentialProvider *string

	// The Amazon Resource Name (ARN) or name of credentials created using AWS Secrets
	// Manager. The credential can use the name of the credentials only if they exist
	// in your current AWS Region.
	Credential *string
}

The credentials for access to a private registry.

type AwsCodeBuildProjectSource

type AwsCodeBuildProjectSource struct {

	// Information about the location of the source code to be built. Valid values
	// include:
	//
	//     * For source code settings that are specified in the source action
	// of a pipeline in AWS CodePipeline, location should not be specified. If it is
	// specified, AWS CodePipeline ignores it. This is because AWS CodePipeline uses
	// the settings in a pipeline's source action instead of this value.
	//
	//     * For
	// source code in an AWS CodeCommit repository, the HTTPS clone URL to the
	// repository that contains the source code and the build spec file (for example,
	// https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name ).
	//
	//     * For
	// source code in an S3 input bucket, one of the following.
	//
	//         * The path to
	// the ZIP file that contains the source code (for example,
	// bucket-name/path/to/object-name.zip).
	//
	//         * The path to the folder that
	// contains the source code (for example,
	// bucket-name/path/to/source-code/folder/).
	//
	//     * For source code in a GitHub
	// repository, the HTTPS clone URL to the repository that contains the source and
	// the build spec file.
	//
	//     * For source code in a Bitbucket repository, the HTTPS
	// clone URL to the repository that contains the source and the build spec file.
	Location *string

	// Information about the Git clone depth for the build project.
	GitCloneDepth *int32

	// The type of repository that contains the source code to be built. Valid values
	// are:
	//
	//     * BITBUCKET - The source code is in a Bitbucket repository.
	//
	//     *
	// CODECOMMIT - The source code is in an AWS CodeCommit repository.
	//
	//     *
	// CODEPIPELINE - The source code settings are specified in the source action of a
	// pipeline in AWS CodePipeline.
	//
	//     * GITHUB - The source code is in a GitHub
	// repository.
	//
	//     * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise
	// repository.
	//
	//     * NO_SOURCE - The project does not have input source code.
	//
	//
	// * S3 - The source code is in an S3 input bucket.
	Type *string

	// Whether to ignore SSL warnings while connecting to the project source code.
	InsecureSsl *bool
}

Information about the build input source code for this build project.

type AwsCodeBuildProjectVpcConfig

type AwsCodeBuildProjectVpcConfig struct {

	// A list of one or more subnet IDs in your Amazon VPC.
	Subnets []*string

	// A list of one or more security group IDs in your Amazon VPC.
	SecurityGroupIds []*string

	// The ID of the VPC.
	VpcId *string
}

Information about the VPC configuration that AWS CodeBuild accesses.

type AwsEc2InstanceDetails

type AwsEc2InstanceDetails struct {

	// The date/time the instance was launched.
	LaunchedAt *string

	// The instance type of the instance.
	Type *string

	// The IPv6 addresses associated with the instance.
	IpV6Addresses []*string

	// The Amazon Machine Image (AMI) ID of the instance.
	ImageId *string

	// The identifier of the VPC that the instance was launched in.
	VpcId *string

	// The IPv4 addresses associated with the instance.
	IpV4Addresses []*string

	// The key name associated with the instance.
	KeyName *string

	// The IAM profile ARN of the instance.
	IamInstanceProfileArn *string

	// The identifier of the subnet that the instance was launched in.
	SubnetId *string
}

The details of an Amazon EC2 instance.

type AwsEc2NetworkInterfaceAttachment

type AwsEc2NetworkInterfaceAttachment struct {

	// The attachment state. Valid values: attaching | attached | detaching | detached
	Status *string

	// The AWS account ID of the owner of the instance.
	InstanceOwnerId *string

	// The timestamp indicating when the attachment initiated.
	AttachTime *string

	// The identifier of the network interface attachment
	AttachmentId *string

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// The device index of the network interface attachment on the instance.
	DeviceIndex *int32

	// The ID of the instance.
	InstanceId *string
}

Information about the network interface attachment.

type AwsEc2NetworkInterfaceDetails

type AwsEc2NetworkInterfaceDetails struct {

	// The network interface attachment.
	Attachment *AwsEc2NetworkInterfaceAttachment

	// The ID of the network interface.
	NetworkInterfaceId *string

	// Indicates whether traffic to or from the instance is validated.
	SourceDestCheck *bool

	// Security groups for the network interface.
	SecurityGroups []*AwsEc2NetworkInterfaceSecurityGroup
}

Details about the network interface

type AwsEc2NetworkInterfaceSecurityGroup

type AwsEc2NetworkInterfaceSecurityGroup struct {

	// The name of the security group.
	GroupName *string

	// The ID of the security group.
	GroupId *string
}

A security group associated with the network interface.

type AwsEc2SecurityGroupDetails

type AwsEc2SecurityGroupDetails struct {

	// The inbound rules associated with the security group.
	IpPermissions []*AwsEc2SecurityGroupIpPermission

	// The AWS account ID of the owner of the security group.
	OwnerId *string

	// The name of the security group.
	GroupName *string

	// [VPC only] The ID of the VPC for the security group.
	VpcId *string

	// The ID of the security group.
	GroupId *string

	// [VPC only] The outbound rules associated with the security group.
	IpPermissionsEgress []*AwsEc2SecurityGroupIpPermission
}

Details about an EC2 security group.

type AwsEc2SecurityGroupIpPermission

type AwsEc2SecurityGroupIpPermission struct {

	// [VPC only] The prefix list IDs for an AWS service. With outbound rules, this is
	// the AWS service to access through a VPC endpoint from instances associated with
	// the security group.
	PrefixListIds []*AwsEc2SecurityGroupPrefixListId

	// The IPv6 ranges.
	Ipv6Ranges []*AwsEc2SecurityGroupIpv6Range

	// The security group and AWS account ID pairs.
	UserIdGroupPairs []*AwsEc2SecurityGroupUserIdGroupPair

	// The IPv4 ranges.
	IpRanges []*AwsEc2SecurityGroupIpRange

	// The start of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6
	// type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all
	// ICMP/ICMPv6 types, you must specify all codes.
	FromPort *int32

	// The IP protocol name (tcp, udp, icmp, icmpv6) or number. [VPC only] Use -1 to
	// specify all protocols. When authorizing security group rules, specifying -1 or a
	// protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all
	// ports, regardless of any port range you specify. For tcp, udp, and icmp, you
	// must specify a port range. For icmpv6, the port range is optional. If you omit
	// the port range, traffic for all types and codes is allowed.
	IpProtocol *string

	// The end of the port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code.
	// A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6
	// types, you must specify all codes.
	ToPort *int32
}

An IP permission for an EC2 security group.

type AwsEc2SecurityGroupIpRange

type AwsEc2SecurityGroupIpRange struct {

	// The IPv4 CIDR range. You can specify either a CIDR range or a source security
	// group, but not both. To specify a single IPv4 address, use the /32 prefix
	// length.
	CidrIp *string
}

A range of IPv4 addresses.

type AwsEc2SecurityGroupIpv6Range

type AwsEc2SecurityGroupIpv6Range struct {

	// The IPv6 CIDR range. You can specify either a CIDR range or a source security
	// group, but not both. To specify a single IPv6 address, use the /128 prefix
	// length.
	CidrIpv6 *string
}

A range of IPv6 addresses.

type AwsEc2SecurityGroupPrefixListId

type AwsEc2SecurityGroupPrefixListId struct {

	// The ID of the prefix.
	PrefixListId *string
}

A prefix list ID.

type AwsEc2SecurityGroupUserIdGroupPair

type AwsEc2SecurityGroupUserIdGroupPair struct {

	// The status of a VPC peering connection, if applicable.
	PeeringStatus *string

	// The ID of the VPC for the referenced security group, if applicable.
	VpcId *string

	// The ID of the security group.
	GroupId *string

	// The ID of the VPC peering connection, if applicable.
	VpcPeeringConnectionId *string

	// The ID of an AWS account. For a referenced security group in another VPC, the
	// account ID of the referenced security group is returned in the response. If the
	// referenced security group is deleted, this value is not returned. [EC2-Classic]
	// Required when adding or removing rules that reference a security group in
	// another AWS.
	UserId *string

	// The name of the security group.
	GroupName *string
}

A relationship between a security group and a user.

type AwsEc2VolumeAttachment

type AwsEc2VolumeAttachment struct {

	// The identifier of the EC2 instance.
	InstanceId *string

	// The attachment state of the volume.
	Status *string

	// The datetime when the attachment initiated.
	AttachTime *string

	// Whether the EBS volume is deleted when the EC2 instance is terminated.
	DeleteOnTermination *bool
}

An attachment to an AWS EC2 volume.

type AwsEc2VolumeDetails

type AwsEc2VolumeDetails struct {

	// The volume attachments.
	Attachments []*AwsEc2VolumeAttachment

	// The snapshot from which the volume was created.
	SnapshotId *string

	// The ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK)
	// that was used to protect the volume encryption key for the volume.
	KmsKeyId *string

	// The volume state.
	Status *string

	// Whether the volume is encrypted.
	Encrypted *bool

	// The datetime when the volume was created.
	CreateTime *string

	// The size of the volume, in GiBs.
	Size *int32
}

Details about an EC2 volume.

type AwsEc2VpcDetails

type AwsEc2VpcDetails struct {

	// The identifier of the set of Dynamic Host Configuration Protocol (DHCP) options
	// that are associated with the VPC. If the default options are associated with the
	// VPC, then this is default.
	DhcpOptionsId *string

	// Information about the IPv4 CIDR blocks associated with the VPC.
	CidrBlockAssociationSet []*CidrBlockAssociation

	// The current state of the VPC.
	State *string

	// Information about the IPv6 CIDR blocks associated with the VPC.
	Ipv6CidrBlockAssociationSet []*Ipv6CidrBlockAssociation
}

Details about an EC2 VPC.

type AwsElasticsearchDomainDetails

type AwsElasticsearchDomainDetails struct {

	// Domain-specific endpoint used to submit index, search, and data upload requests
	// to an Amazon ES domain. The endpoint is a service URL.
	Endpoint *string

	// Name of an Amazon ES domain. Domain names are unique across all domains owned by
	// the same account within an AWS Region. Domain names must start with a lowercase
	// letter and must be between 3 and 28 characters. Valid characters are a-z
	// (lowercase only), 0-9, and – (hyphen).
	DomainName *string

	// Details about the configuration for node-to-node encryption.
	NodeToNodeEncryptionOptions *AwsElasticsearchDomainNodeToNodeEncryptionOptions

	// Unique identifier for an Amazon ES domain.
	DomainId *string

	// Details about the configuration for encryption at rest.
	EncryptionAtRestOptions *AwsElasticsearchDomainEncryptionAtRestOptions

	// IAM policy document specifying the access policies for the new Amazon ES domain.
	AccessPolicies *string

	// Elasticsearch version.
	ElasticsearchVersion *string

	// Additional options for the domain endpoint.
	DomainEndpointOptions *AwsElasticsearchDomainDomainEndpointOptions

	// The key-value pair that exists if the Amazon ES domain uses VPC endpoints.
	Endpoints map[string]*string

	// Information that Amazon ES derives based on VPCOptions for the domain.
	VPCOptions *AwsElasticsearchDomainVPCOptions
}

Information about an Elasticsearch domain.

type AwsElasticsearchDomainDomainEndpointOptions

type AwsElasticsearchDomainDomainEndpointOptions struct {

	// Whether to require that all traffic to the domain arrive over HTTPS.
	EnforceHTTPS *bool

	// The TLS security policy to apply to the HTTPS endpoint of the Elasticsearch
	// domain. Valid values:
	//
	//     * Policy-Min-TLS-1-0-2019-07, which supports TLSv1.0
	// and higher
	//
	//     * Policy-Min-TLS-1-2-2019-07, which only supports TLSv1.2
	TLSSecurityPolicy *string
}

Additional options for the domain endpoint, such as whether to require HTTPS for all traffic.

type AwsElasticsearchDomainEncryptionAtRestOptions

type AwsElasticsearchDomainEncryptionAtRestOptions struct {

	// The KMS key ID. Takes the form 1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a.
	KmsKeyId *string

	// Whether encryption at rest is enabled.
	Enabled *bool
}

Details about the configuration for encryption at rest.

type AwsElasticsearchDomainNodeToNodeEncryptionOptions

type AwsElasticsearchDomainNodeToNodeEncryptionOptions struct {

	// Whether node-to-node encryption is enabled.
	Enabled *bool
}

Details about the configuration for node-to-node encryption.

type AwsElasticsearchDomainVPCOptions

type AwsElasticsearchDomainVPCOptions struct {

	// The list of Availability Zones associated with the VPC subnets.
	AvailabilityZones []*string

	// A list of subnet IDs associated with the VPC endpoints for the domain.
	SubnetIds []*string

	// ID for the VPC.
	VPCId *string

	// The list of security group IDs associated with the VPC endpoints for the domain.
	SecurityGroupIds []*string
}

Information that Amazon ES derives based on VPCOptions for the domain.

type AwsElbv2LoadBalancerDetails

type AwsElbv2LoadBalancerDetails struct {

	// The state of the load balancer.
	State *LoadBalancerState

	// The ID of the Amazon Route 53 hosted zone associated with the load balancer.
	CanonicalHostedZoneId *string

	// The ID of the VPC for the load balancer.
	VpcId *string

	// The Availability Zones for the load balancer.
	AvailabilityZones []*AvailabilityZone

	// The nodes of an Internet-facing load balancer have public IP addresses.
	Scheme *string

	// The IDs of the security groups for the load balancer.
	SecurityGroups []*string

	// The date and time the load balancer was created.
	CreatedTime *string

	// The type of load balancer.
	Type *string

	// The public DNS name of the load balancer.
	DNSName *string

	// The type of IP addresses used by the subnets for your load balancer. The
	// possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6
	// addresses).
	IpAddressType *string
}

Information about a load balancer.

type AwsIamAccessKeyDetails

type AwsIamAccessKeyDetails struct {

	// The name of the principal.
	PrincipalName *string

	// The type of principal associated with an access key.
	PrincipalType *string

	// The user associated with the IAM access key related to a finding. The UserName
	// parameter has been replaced with the PrincipalName parameter because access keys
	// can also be assigned to principals that are not IAM users.
	UserName *string

	// The creation date/time of the IAM access key related to a finding.
	CreatedAt *string

	// The status of the IAM access key related to a finding.
	Status AwsIamAccessKeyStatus

	// The ID of the principal associated with an access key.
	PrincipalId *string
}

IAM access key details related to a finding.

type AwsIamAccessKeyStatus

type AwsIamAccessKeyStatus string
const (
	AwsIamAccessKeyStatusActive   AwsIamAccessKeyStatus = "Active"
	AwsIamAccessKeyStatusInactive AwsIamAccessKeyStatus = "Inactive"
)

Enum values for AwsIamAccessKeyStatus

type AwsIamRoleDetails

type AwsIamRoleDetails struct {

	// The trust policy that grants permission to assume the role.
	AssumeRolePolicyDocument *string

	// The date and time, in ISO 8601 date-time format, when the role was created.
	CreateDate *string

	// The path to the role.
	Path *string

	// The maximum session duration (in seconds) that you want to set for the specified
	// role.
	MaxSessionDuration *int32

	// The stable and unique string identifying the role.
	RoleId *string

	// The friendly name that identifies the role.
	RoleName *string
}

Contains information about an IAM role, including all of the role's policies.

type AwsKmsKeyDetails

type AwsKmsKeyDetails struct {

	// The date and time when the CMK was created.
	CreationDate *float64

	// The source of the CMK's key material. When this value is AWS_KMS, AWS KMS
	// created the key material. When this value is EXTERNAL, the key material was
	// imported from your existing key management infrastructure or the CMK lacks key
	// material. When this value is AWS_CLOUDHSM, the key material was created in the
	// AWS CloudHSM cluster associated with a custom key store.
	Origin *string

	// The twelve-digit account ID of the AWS account that owns the CMK.
	AWSAccountId *string

	// The globally unique identifier for the CMK.
	KeyId *string

	// The manager of the CMK. CMKs in your AWS account are either customer managed or
	// AWS managed.
	KeyManager *string

	// The state of the CMK.
	KeyState *string
}

Contains metadata about a customer master key (CMK).

type AwsLambdaFunctionCode

type AwsLambdaFunctionCode struct {

	// An Amazon S3 bucket in the same AWS Region as your function. The bucket can be
	// in a different AWS account.
	S3Bucket *string

	// The Amazon S3 key of the deployment package.
	S3Key *string

	// The base64-encoded contents of the deployment package. AWS SDK and AWS CLI
	// clients handle the encoding for you.
	ZipFile *string

	// For versioned objects, the version of the deployment package object to use.
	S3ObjectVersion *string
}

The code for the Lambda function. You can specify either an object in Amazon S3, or upload a deployment package directly.

type AwsLambdaFunctionDeadLetterConfig

type AwsLambdaFunctionDeadLetterConfig struct {

	// The Amazon Resource Name (ARN) of an Amazon SQS queue or Amazon SNS topic.
	TargetArn *string
}

The dead-letter queue for failed asynchronous invocations.

type AwsLambdaFunctionDetails

type AwsLambdaFunctionDetails struct {

	// The KMS key that's used to encrypt the function's environment variables. This
	// key is only returned if you've configured a customer managed CMK.
	KmsKeyArn *string

	// For Lambda@Edge functions, the ARN of the master function.
	MasterArn *string

	// The name of the function.
	FunctionName *string

	// The amount of time that Lambda allows a function to run before stopping it.
	Timeout *int32

	// The function's networking configuration.
	VpcConfig *AwsLambdaFunctionVpcConfig

	// The runtime environment for the Lambda function.
	Runtime *string

	// The function's environment variables.
	Environment *AwsLambdaFunctionEnvironment

	// The function's execution role.
	Role *string

	// The function's layers.
	Layers []*AwsLambdaFunctionLayer

	// The function's AWS X-Ray tracing configuration.
	TracingConfig *AwsLambdaFunctionTracingConfig

	// The memory that's allocated to the function.
	MemorySize *int32

	// The version of the Lambda function.
	Version *string

	// The function's dead letter queue.
	DeadLetterConfig *AwsLambdaFunctionDeadLetterConfig

	// An AwsLambdaFunctionCode object.
	Code *AwsLambdaFunctionCode

	// The SHA256 hash of the function's deployment package.
	CodeSha256 *string

	// The function that Lambda calls to begin executing your function.
	Handler *string

	// The latest updated revision of the function or alias.
	RevisionId *string

	// The date and time that the function was last updated, in ISO-8601 format
	// (YYYY-MM-DDThh:mm:ss.sTZD).
	LastModified *string
}

Details about a function's configuration.

type AwsLambdaFunctionEnvironment

type AwsLambdaFunctionEnvironment struct {

	// Environment variable key-value pairs.
	Variables map[string]*string

	// An AwsLambdaFunctionEnvironmentError object.
	Error *AwsLambdaFunctionEnvironmentError
}

A function's environment variable settings.

type AwsLambdaFunctionEnvironmentError

type AwsLambdaFunctionEnvironmentError struct {

	// The error code.
	ErrorCode *string

	// The error message.
	Message *string
}

Error messages for environment variables that couldn't be applied.

type AwsLambdaFunctionLayer

type AwsLambdaFunctionLayer struct {

	// The size of the layer archive in bytes.
	CodeSize *int32

	// The Amazon Resource Name (ARN) of the function layer.
	Arn *string
}

An AWS Lambda layer.

type AwsLambdaFunctionTracingConfig

type AwsLambdaFunctionTracingConfig struct {

	// The tracing mode.
	Mode *string
}

The function's AWS X-Ray tracing configuration.

type AwsLambdaFunctionVpcConfig

type AwsLambdaFunctionVpcConfig struct {

	// A list of VPC security groups IDs.
	SecurityGroupIds []*string

	// A list of VPC subnet IDs.
	SubnetIds []*string

	// The ID of the VPC.
	VpcId *string
}

The VPC security groups and subnets that are attached to a Lambda function. For more information, see VPC Settings.

type AwsLambdaLayerVersionDetails

type AwsLambdaLayerVersionDetails struct {

	// The version number.
	Version *int64

	// The date that the version was created, in ISO 8601 format. For example,
	// 2018-11-27T15:10:45.123+0000.
	CreatedDate *string

	// The layer's compatible runtimes. Maximum number of five items. Valid values:
	// nodejs10.x | nodejs12.x | java8 | java11 | python2.7 | python3.6 | python3.7 |
	// python3.8 | dotnetcore1.0 | dotnetcore2.1 | go1.x | ruby2.5 | provided
	CompatibleRuntimes []*string
}

Details about a Lambda layer version.

type AwsRdsDbInstanceAssociatedRole

type AwsRdsDbInstanceAssociatedRole struct {

	// The name of the feature associated with the IAM)role.
	FeatureName *string

	// The Amazon Resource Name (ARN) of the IAM role that is associated with the DB
	// instance.
	RoleArn *string

	// Describes the state of the association between the IAM role and the DB instance.
	// The Status property returns one of the following values:
	//
	//     * ACTIVE - The IAM
	// role ARN is associated with the DB instance and can be used to access other AWS
	// services on your behalf.
	//
	//     * PENDING - The IAM role ARN is being associated
	// with the DB instance.
	//
	//     * INVALID - The IAM role ARN is associated with the
	// DB instance. But the DB instance is unable to assume the IAM role in order to
	// access other AWS services on your behalf.
	Status *string
}

An AWS Identity and Access Management (IAM) role associated with the DB instance.

type AwsRdsDbInstanceDetails

type AwsRdsDbInstanceDetails struct {

	// Specifies the connection endpoint.
	Endpoint *AwsRdsDbInstanceEndpoint

	// The AWS Region-unique, immutable identifier for the DB instance. This identifier
	// is found in AWS CloudTrail log entries whenever the AWS KMS key for the DB
	// instance is accessed.
	DbiResourceId *string

	// The meaning of this parameter differs according to the database engine you use.
	// MySQL, MariaDB, SQL Server, PostgreSQL Contains the name of the initial database
	// of this instance that was provided at create time, if one was specified when the
	// DB instance was created. This same name is returned for the life of the DB
	// instance. Oracle Contains the Oracle System ID (SID) of the created DB instance.
	// Not shown when the returned parameters do not apply to an Oracle DB instance.
	DBName *string

	// The identifier of the CA certificate for this DB instance.
	CACertificateIdentifier *string

	// Specifies the port that the DB instance listens on. If the DB instance is part
	// of a DB cluster, this can be a different port than the DB cluster port.
	DbInstancePort *int32

	// If StorageEncrypted is true, the AWS KMS key identifier for the encrypted DB
	// instance.
	KmsKeyId *string

	// A list of VPC security groups that the DB instance belongs to.
	VpcSecurityGroups []*AwsRdsDbInstanceVpcSecurityGroup

	// Indicates whether the DB instance has deletion protection enabled. When deletion
	// protection is enabled, the database cannot be deleted.
	DeletionProtection *bool

	// True if mapping of AWS Identity and Access Management (IAM) accounts to database
	// accounts is enabled, and otherwise false. IAM database authentication can be
	// enabled for the following database engines.
	//
	//     * For MySQL 5.6, minor version
	// 5.6.34 or higher
	//
	//     * For MySQL 5.7, minor version 5.7.16 or higher
	//
	//     *
	// Aurora 5.6 or higher
	IAMDatabaseAuthenticationEnabled *bool

	// Specifies whether the DB instance is encrypted.
	StorageEncrypted *bool

	// If the DB instance is a member of a DB cluster, contains the name of the DB
	// cluster that the DB instance is a member of.
	DBClusterIdentifier *string

	// Contains the name of the compute and memory capacity class of the DB instance.
	DBInstanceClass *string

	// Provides the name of the database engine to use for this DB instance.
	Engine *string

	// The ARN from the key store with which the instance is associated for TDE
	// encryption.
	TdeCredentialArn *string

	// Provides the date and time the DB instance was created.
	InstanceCreateTime *string

	// Contains a user-supplied database identifier. This identifier is the unique key
	// that identifies a DB instance.
	DBInstanceIdentifier *string

	// The AWS Identity and Access Management (IAM) roles associated with the DB
	// instance.
	AssociatedRoles []*AwsRdsDbInstanceAssociatedRole

	// Indicates the database engine version.
	EngineVersion *string

	// Specifies the accessibility options for the DB instance. A value of true
	// specifies an Internet-facing instance with a publicly resolvable DNS name, which
	// resolves to a public IP address. A value of false specifies an internal instance
	// with a DNS name that resolves to a private IP address.
	PubliclyAccessible *bool
}

Contains the details of an Amazon RDS DB instance.

type AwsRdsDbInstanceEndpoint

type AwsRdsDbInstanceEndpoint struct {

	// Specifies the DNS address of the DB instance.
	Address *string

	// Specifies the port that the database engine is listening on.
	Port *int32

	// Specifies the ID that Amazon Route 53 assigns when you create a hosted zone.
	HostedZoneId *string
}

Specifies the connection endpoint.

type AwsRdsDbInstanceVpcSecurityGroup

type AwsRdsDbInstanceVpcSecurityGroup struct {

	// The name of the VPC security group.
	VpcSecurityGroupId *string

	// The status of the VPC security group.
	Status *string
}

A VPC security groups that the DB instance belongs to.

type AwsS3BucketDetails

type AwsS3BucketDetails struct {

	// The encryption rules that are applied to the S3 bucket.
	ServerSideEncryptionConfiguration *AwsS3BucketServerSideEncryptionConfiguration

	// The canonical user ID of the owner of the S3 bucket.
	OwnerId *string

	// The display name of the owner of the S3 bucket.
	OwnerName *string

	// The date and time when the S3 bucket was created.
	CreatedAt *string
}

The details of an Amazon S3 bucket.

type AwsS3BucketServerSideEncryptionByDefault

type AwsS3BucketServerSideEncryptionByDefault struct {

	// Server-side encryption algorithm to use for the default encryption.
	SSEAlgorithm *string

	// AWS KMS customer master key (CMK) ID to use for the default encryption.
	KMSMasterKeyID *string
}

Specifies the default server-side encryption to apply to new objects in the bucket.

type AwsS3BucketServerSideEncryptionConfiguration

type AwsS3BucketServerSideEncryptionConfiguration struct {

	// The encryption rules that are applied to the S3 bucket.
	Rules []*AwsS3BucketServerSideEncryptionRule
}

The encryption configuration for the S3 bucket.

type AwsS3BucketServerSideEncryptionRule

type AwsS3BucketServerSideEncryptionRule struct {

	// Specifies the default server-side encryption to apply to new objects in the
	// bucket. If a PUT object request doesn't specify any server-side encryption, this
	// default encryption is applied.
	ApplyServerSideEncryptionByDefault *AwsS3BucketServerSideEncryptionByDefault
}

An encryption rule to apply to the S3 bucket.

type AwsS3ObjectDetails

type AwsS3ObjectDetails struct {

	// If the object is stored using server-side encryption, the value of the
	// server-side encryption algorithm used when storing this object in Amazon S3.
	ServerSideEncryption *string

	// The identifier of the AWS Key Management Service (AWS KMS) symmetric customer
	// managed customer master key (CMK) that was used for the object.
	SSEKMSKeyId *string

	// The version of the object.
	VersionId *string

	// The date and time when the object was last modified.
	LastModified *string

	// The opaque identifier assigned by a web server to a specific version of a
	// resource found at a URL.
	ETag *string

	// A standard MIME type describing the format of the object data.
	ContentType *string
}

Details about an Amazon S3 object.

type AwsSecurityFinding

type AwsSecurityFinding struct {

	// One or more finding types in the format of namespace/category/classifier that
	// classify a finding. Valid namespace values are: Software and Configuration
	// Checks | TTPs | Effects | Unusual Behaviors | Sensitive Data Identifications
	//
	// This member is required.
	Types []*string

	// The ARN generated by Security Hub that uniquely identifies a product that
	// generates findings. This can be the ARN for a third-party product that is
	// integrated with Security Hub, or the ARN for a custom integration.
	//
	// This member is required.
	ProductArn *string

	// A URL that links to a page about the current finding in the security-findings
	// provider's solution.
	SourceUrl *string

	// Threat intelligence details related to a finding.
	ThreatIntelIndicators []*ThreatIntelIndicator

	// A finding's description. In this release, Description is a required property.
	//
	// This member is required.
	Description *string

	// Provides a list of vulnerabilities associated with the findings.
	Vulnerabilities []*Vulnerability

	// The level of importance assigned to the resources associated with the finding. A
	// score of 0 means that the underlying resources have no criticality, and a score
	// of 100 is reserved for the most critical resources.
	Criticality *int32

	// Indicates the veracity of a finding.
	VerificationState VerificationState

	// A set of resource data types that describe the resources that the finding refers
	// to.
	//
	// This member is required.
	Resources []*Resource

	// The details of network-related information about a finding.
	Network *Network

	// A list of malware related to a finding.
	Malware []*Malware

	// Provides information about a network path that is relevant to a finding. Each
	// entry under NetworkPath represents a component of that path.
	NetworkPath []*NetworkPathComponent

	// Provides information about the status of the investigation into a finding.
	Workflow *Workflow

	// The details of process-related information about a finding.
	Process *ProcessDetails

	// A list of related findings.
	RelatedFindings []*RelatedFinding

	// An ISO8601-formatted timestamp that indicates when the security-findings
	// provider first observed the potential security issue that a finding captured.
	FirstObservedAt *string

	// A finding's severity.
	//
	// This member is required.
	Severity *Severity

	// The schema version that a finding is formatted for.
	//
	// This member is required.
	SchemaVersion *string

	// The record state of a finding.
	RecordState RecordState

	// A data type where security-findings providers can include additional
	// solution-specific details that aren't part of the defined AwsSecurityFinding
	// format.
	ProductFields map[string]*string

	// A data type that describes the remediation options for a finding.
	Remediation *Remediation

	// A finding's title. In this release, Title is a required property.
	//
	// This member is required.
	Title *string

	// A finding's confidence. Confidence is defined as the likelihood that a finding
	// accurately identifies the behavior or issue that it was intended to identify.
	// Confidence is scored on a 0-100 basis using a ratio scale, where 0 means zero
	// percent confidence and 100 means 100 percent confidence.
	Confidence *int32

	// An ISO8601-formatted timestamp that indicates when the security-findings
	// provider most recently observed the potential security issue that a finding
	// captured.
	LastObservedAt *string

	// The AWS account ID that a finding is generated in.
	//
	// This member is required.
	AwsAccountId *string

	// The security findings provider-specific identifier for a finding.
	//
	// This member is required.
	Id *string

	// A list of name/value string pairs associated with the finding. These are custom,
	// user-defined fields added to a finding.
	UserDefinedFields map[string]*string

	// The workflow state of a finding.
	WorkflowState WorkflowState

	// An ISO8601-formatted timestamp that indicates when the security-findings
	// provider last updated the finding record.
	//
	// This member is required.
	UpdatedAt *string

	// This data type is exclusive to findings that are generated as the result of a
	// check run against a specific rule in a supported security standard, such as CIS
	// AWS Foundations. Contains security standard-related finding details.
	Compliance *Compliance

	// A user-defined note added to a finding.
	Note *Note

	// An ISO8601-formatted timestamp that indicates when the security-findings
	// provider created the potential security issue that a finding captured.
	//
	// This member is required.
	CreatedAt *string

	// The identifier for the solution-specific component (a discrete unit of logic)
	// that generated a finding. In various security-findings providers' solutions,
	// this generator can be called a rule, a check, a detector, a plugin, etc.
	//
	// This member is required.
	GeneratorId *string
}

Provides consistent format for the contents of the Security Hub-aggregated findings. AwsSecurityFinding format enables you to share findings between AWS security services and third-party solutions, and security standards checks. A finding is a potential security issue generated either by AWS services (Amazon GuardDuty, Amazon Inspector, and Amazon Macie) or by the integrated third-party solutions and standards checks.

type AwsSecurityFindingFilters

type AwsSecurityFindingFilters struct {

	// The path to the process executable.
	ProcessPath []*StringFilter

	// The protocol of network-related information about a finding.
	NetworkProtocol []*StringFilter

	// The IPv4 addresses associated with the instance.
	ResourceAwsEc2InstanceIpV4Addresses []*IpFilter

	// The canonical AWS partition name that the Region is assigned to.
	ResourcePartition []*StringFilter

	// The creation date/time of the IAM access key related to a finding.
	ResourceAwsIamAccessKeyCreatedAt []*DateFilter

	// The solution-generated identifier for a related finding.
	RelatedFindingsId []*StringFilter

	// Specifies the type of the resource that details are provided for.
	ResourceType []*StringFilter

	// The source IPv4 address of network-related information about a finding.
	NetworkSourceIpV4 []*IpFilter

	// The source IPv6 address of network-related information about a finding.
	NetworkSourceIpV6 []*IpFilter

	// The principal that created a note.
	NoteUpdatedBy []*StringFilter

	// Indicates the direction of network traffic associated with a finding.
	NetworkDirection []*StringFilter

	// The identifier of the VPC that the instance was launched in.
	ResourceAwsEc2InstanceVpcId []*StringFilter

	// The source port of network-related information about a finding.
	NetworkSourcePort []*NumberFilter

	// The type of a threat intelligence indicator.
	ThreatIntelIndicatorType []*StringFilter

	// An ISO8601-formatted timestamp that indicates when the security-findings
	// provider first observed the potential security issue that a finding captured.
	FirstObservedAt []*DateFilter

	// The value of a threat intelligence indicator.
	ThreatIntelIndicatorValue []*StringFilter

	// The normalized severity of a finding.
	SeverityNormalized []*NumberFilter

	// The date/time that the container was started.
	ResourceContainerLaunchedAt []*DateFilter

	// The display name of the owner of the S3 bucket.
	ResourceAwsS3BucketOwnerName []*StringFilter

	// The date/time that the process was launched.
	ProcessLaunchedAt []*DateFilter

	// The security findings provider-specific identifier for a finding.
	Id []*StringFilter

	// The user associated with the IAM access key related to a finding.
	ResourceAwsIamAccessKeyUserName []*StringFilter

	// The level of importance assigned to the resources associated with the finding. A
	// score of 0 means that the underlying resources have no criticality, and a score
	// of 100 is reserved for the most critical resources.
	Criticality []*NumberFilter

	// The destination port of network-related information about a finding.
	NetworkDestinationPort []*NumberFilter

	// A list of AWS tags associated with a resource at the time the finding was
	// processed.
	ResourceTags []*MapFilter

	// The IAM profile ARN of the instance.
	ResourceAwsEc2InstanceIamInstanceProfileArn []*StringFilter

	// The destination IPv6 address of network-related information about a finding.
	NetworkDestinationIpV6 []*IpFilter

	// The timestamp of when the note was updated.
	NoteUpdatedAt []*DateFilter

	// The identifier of the image related to a finding.
	ResourceContainerImageId []*StringFilter

	// The destination IPv4 address of network-related information about a finding.
	NetworkDestinationIpV4 []*IpFilter

	// The type of the malware that was observed.
	MalwareType []*StringFilter

	// The parent process ID.
	ProcessParentPid []*NumberFilter

	// The source of the threat intelligence.
	ThreatIntelIndicatorSource []*StringFilter

	// The date and time the instance was launched.
	ResourceAwsEc2InstanceLaunchedAt []*DateFilter

	// The recommendation of what to do about the issue described in a finding.
	RecommendationText []*StringFilter

	// The details of a resource that doesn't have a specific subfield for the resource
	// type defined.
	ResourceDetailsOther []*MapFilter

	// Exclusive to findings that are generated as the result of a check run against a
	// specific rule in a supported standard, such as CIS AWS Foundations. Contains
	// security standard-related finding details.
	ComplianceStatus []*StringFilter

	// The date/time that the process was terminated.
	ProcessTerminatedAt []*DateFilter

	// The instance type of the instance.
	ResourceAwsEc2InstanceType []*StringFilter

	// An ISO8601-formatted timestamp that indicates when the security-findings
	// provider captured the potential security issue that a finding captured.
	CreatedAt []*DateFilter

	// The process ID.
	ProcessPid []*NumberFilter

	// The state of the malware that was observed.
	MalwareState []*StringFilter

	// The filesystem path of the malware that was observed.
	MalwarePath []*StringFilter

	// The name of the image related to a finding.
	ResourceContainerImageName []*StringFilter

	// The status of the investigation into a finding. Allowed values are the
	// following.
	//
	//     * NEW - The initial state of a finding, before it is reviewed.
	//
	//
	// * NOTIFIED - Indicates that the resource owner has been notified about the
	// security issue. Used when the initial reviewer is not the resource owner, and
	// needs intervention from the resource owner.
	//
	//     * SUPPRESSED - The finding will
	// not be reviewed again and will not be acted upon.
	//
	//     * RESOLVED - The finding
	// was reviewed and remediated and is now considered resolved.
	WorkflowStatus []*StringFilter

	// The AWS account ID that a finding is generated in.
	AwsAccountId []*StringFilter

	// The label of a finding's severity.
	SeverityLabel []*StringFilter

	// The ARN of the solution that generated a related finding.
	RelatedFindingsProductArn []*StringFilter

	// A finding's title.
	Title []*StringFilter

	// The category of a threat intelligence indicator.
	ThreatIntelIndicatorCategory []*StringFilter

	// The canonical identifier for the given resource type.
	ResourceId []*StringFilter

	// The identifier of the subnet that the instance was launched in.
	ResourceAwsEc2InstanceSubnetId []*StringFilter

	// A data type where security-findings providers can include additional
	// solution-specific details that aren't part of the defined AwsSecurityFinding
	// format.
	ProductFields []*MapFilter

	// The updated record state for the finding.
	RecordState []*StringFilter

	// The Amazon Machine Image (AMI) ID of the instance.
	ResourceAwsEc2InstanceImageId []*StringFilter

	// The name of the findings provider (company) that owns the solution (product)
	// that generates findings.
	CompanyName []*StringFilter

	// The native severity as defined by the security-findings provider's solution that
	// generated the finding.
	SeverityProduct []*NumberFilter

	// The status of the IAM access key related to a finding.
	ResourceAwsIamAccessKeyStatus []*StringFilter

	// The ARN generated by Security Hub that uniquely identifies a third-party company
	// (security findings provider) after this provider's product (solution that
	// generates findings) is registered with Security Hub.
	ProductArn []*StringFilter

	// The canonical AWS external Region name where this resource is located.
	ResourceRegion []*StringFilter

	// The date/time of the last observation of a threat intelligence indicator.
	ThreatIntelIndicatorLastObservedAt []*DateFilter

	// A list of name/value string pairs associated with the finding. These are custom,
	// user-defined fields added to a finding.
	UserDefinedFields []*MapFilter

	// A finding's description.
	Description []*StringFilter

	// An ISO8601-formatted timestamp that indicates when the security-findings
	// provider most recently observed the potential security issue that a finding
	// captured.
	LastObservedAt []*DateFilter

	// The name of the malware that was observed.
	MalwareName []*StringFilter

	// The URL for more details from the source of the threat intelligence.
	ThreatIntelIndicatorSourceUrl []*StringFilter

	// A finding type in the format of namespace/category/classifier that classifies a
	// finding.
	Type []*StringFilter

	// The key name associated with the instance.
	ResourceAwsEc2InstanceKeyName []*StringFilter

	// The name of the container related to a finding.
	ResourceContainerName []*StringFilter

	// The IPv6 addresses associated with the instance.
	ResourceAwsEc2InstanceIpV6Addresses []*IpFilter

	// A URL that links to a page about the current finding in the security-findings
	// provider's solution.
	SourceUrl []*StringFilter

	// The source domain of network-related information about a finding.
	NetworkSourceDomain []*StringFilter

	// The veracity of a finding.
	VerificationState []*StringFilter

	// An ISO8601-formatted timestamp that indicates when the security-findings
	// provider last updated the finding record.
	UpdatedAt []*DateFilter

	// The destination domain of network-related information about a finding.
	NetworkDestinationDomain []*StringFilter

	// The workflow state of a finding. Note that this field is deprecated. To search
	// for a finding based on its workflow status, use WorkflowStatus.
	WorkflowState []*StringFilter

	// A finding's confidence. Confidence is defined as the likelihood that a finding
	// accurately identifies the behavior or issue that it was intended to identify.
	// Confidence is scored on a 0-100 basis using a ratio scale, where 0 means zero
	// percent confidence and 100 means 100 percent confidence.
	Confidence []*NumberFilter

	// The name of the process.
	ProcessName []*StringFilter

	// The source media access control (MAC) address of network-related information
	// about a finding.
	NetworkSourceMac []*StringFilter

	// The name of the solution (product) that generates findings.
	ProductName []*StringFilter

	// The identifier for the solution-specific component (a discrete unit of logic)
	// that generated a finding. In various security-findings providers' solutions,
	// this generator can be called a rule, a check, a detector, a plugin, etc.
	GeneratorId []*StringFilter

	// The canonical user ID of the owner of the S3 bucket.
	ResourceAwsS3BucketOwnerId []*StringFilter

	// The text of a note.
	NoteText []*StringFilter

	// A keyword for a finding.
	Keyword []*KeywordFilter
}

A collection of attributes that are applied to all active Security Hub-aggregated findings and that result in a subset of findings that are included in this insight.

type AwsSecurityFindingIdentifier

type AwsSecurityFindingIdentifier struct {

	// The identifier of the finding that was specified by the finding provider.
	//
	// This member is required.
	Id *string

	// The ARN generated by Security Hub that uniquely identifies a product that
	// generates findings. This can be the ARN for a third-party product that is
	// integrated with Security Hub, or the ARN for a custom integration.
	//
	// This member is required.
	ProductArn *string
}

Identifies a finding to update using BatchUpdateFindings.

type AwsSnsTopicDetails

type AwsSnsTopicDetails struct {

	// The ID of an AWS managed customer master key (CMK) for Amazon SNS or a custom
	// CMK.
	KmsMasterKeyId *string

	// Subscription is an embedded property that describes the subscription endpoints
	// of an Amazon SNS topic.
	Subscription []*AwsSnsTopicSubscription

	// The name of the topic.
	TopicName *string

	// The subscription's owner.
	Owner *string
}

A wrapper type for the topic's Amazon Resource Name (ARN).

type AwsSnsTopicSubscription

type AwsSnsTopicSubscription struct {

	// The subscription's endpoint (format depends on the protocol).
	Endpoint *string

	// The subscription's protocol.
	Protocol *string
}

A wrapper type for the attributes of an Amazon SNS subscription.

type AwsSqsQueueDetails

type AwsSqsQueueDetails struct {

	// The name of the new queue.
	QueueName *string

	// The ID of an AWS managed customer master key (CMK) for Amazon SQS or a custom
	// CMK.
	KmsMasterKeyId *string

	// The Amazon Resource Name (ARN) of the dead-letter queue to which Amazon SQS
	// moves messages after the value of maxReceiveCount is exceeded.
	DeadLetterTargetArn *string

	// The length of time, in seconds, for which Amazon SQS can reuse a data key to
	// encrypt or decrypt messages before calling AWS KMS again.
	KmsDataKeyReusePeriodSeconds *int32
}

Data about a queue.

type AwsWafWebAclDetails

type AwsWafWebAclDetails struct {

	// A unique identifier for a WebACL.
	WebAclId *string

	// A friendly name or description of the WebACL. You can't change the name of a
	// WebACL after you create it.
	Name *string

	// An array that contains the action for each rule in a WebACL, the priority of the
	// rule, and the ID of the rule.
	Rules []*AwsWafWebAclRule

	// The action to perform if none of the rules contained in the WebACL match.
	DefaultAction *string
}

Details about a WAF WebACL.

type AwsWafWebAclRule

type AwsWafWebAclRule struct {

	// Use the OverrideAction to test your RuleGroup. Any rule in a RuleGroup can
	// potentially block a request. If you set the OverrideAction to None, the
	// RuleGroup blocks a request if any individual rule in the RuleGroup matches the
	// request and is configured to block that request. However, if you first want to
	// test the RuleGroup, set the OverrideAction to Count. The RuleGroup then
	// overrides any block action specified by individual rules contained within the
	// group. Instead of blocking matching requests, those requests are counted.
	// ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup to
	// a WebACL. In this case you do not use ActivatedRule|Action. For all other update
	// requests, ActivatedRule|Action is used instead of ActivatedRule|OverrideAction.
	OverrideAction *WafOverrideAction

	// Specifies the action that CloudFront or AWS WAF takes when a web request matches
	// the conditions in the rule.
	Action *WafAction

	// Specifies the order in which the rules in a WebACL are evaluated. Rules with a
	// lower value for Priority are evaluated before rules with a higher value. The
	// value must be a unique integer. If you add multiple rules to a WebACL, the
	// values do not need to be consecutive.
	Priority *int32

	// The identifier for a rule.
	RuleId *string

	// The rule type. Valid values: REGULAR | RATE_BASED | GROUP The default is
	// REGULAR.
	Type *string

	// Rules to exclude from a rule group.
	ExcludedRules []*WafExcludedRule
}

Details for a rule in a WAF WebACL.

type BatchUpdateFindingsUnprocessedFinding

type BatchUpdateFindingsUnprocessedFinding struct {

	// The identifier of the finding that was not updated.
	//
	// This member is required.
	FindingIdentifier *AwsSecurityFindingIdentifier

	// The message associated with the error.
	//
	// This member is required.
	ErrorMessage *string

	// The code associated with the error.
	//
	// This member is required.
	ErrorCode *string
}

A finding from a BatchUpdateFindings request that Security Hub was unable to update.

type CidrBlockAssociation

type CidrBlockAssociation struct {

	// The association ID for the IPv4 CIDR block.
	AssociationId *string

	// The IPv4 CIDR block.
	CidrBlock *string

	// Information about the state of the IPv4 CIDR block.
	CidrBlockState *string
}

An IPv4 CIDR block association.

type Compliance

type Compliance struct {

	// The result of a standards check. The valid values for Status are as follows.
	//
	//
	// * PASSED - Standards check passed for all evaluated resources.
	//
	//         *
	// WARNING - Some information is missing or this check is not supported for your
	// configuration.
	//
	//         * FAILED - Standards check failed for at least one
	// evaluated resource.
	//
	//         * NOT_AVAILABLE - Check could not be performed due
	// to a service outage, API error, or because the result of the AWS Config
	// evaluation was NOT_APPLICABLE. If the AWS Config evaluation result was
	// NOT_APPLICABLE, then after 3 days, Security Hub automatically archives the
	// finding.
	Status ComplianceStatus

	// For a control, the industry or regulatory framework requirements that are
	// related to the control. The check for that control is aligned with these
	// requirements.
	RelatedRequirements []*string

	// For findings generated from controls, a list of reasons behind the value of
	// Status. For the list of status reason codes and their meanings, see
	// Standards-related information in the ASFF
	// (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-results.html#securityhub-standards-results-asff)
	// in the AWS Security Hub User Guide.
	StatusReasons []*StatusReason
}

Contains finding details that are specific to control-based findings. Only returned for findings generated from controls.

type ComplianceStatus

type ComplianceStatus string
const (
	ComplianceStatusPassed        ComplianceStatus = "PASSED"
	ComplianceStatusWarning       ComplianceStatus = "WARNING"
	ComplianceStatusFailed        ComplianceStatus = "FAILED"
	ComplianceStatusNot_available ComplianceStatus = "NOT_AVAILABLE"
)

Enum values for ComplianceStatus

type ContainerDetails

type ContainerDetails struct {

	// The name of the container related to a finding.
	Name *string

	// The identifier of the image related to a finding.
	ImageId *string

	// The date and time when the container started.
	LaunchedAt *string

	// The name of the image related to a finding.
	ImageName *string
}

Container details related to a finding.

type ControlStatus

type ControlStatus string
const (
	ControlStatusEnabled  ControlStatus = "ENABLED"
	ControlStatusDisabled ControlStatus = "DISABLED"
)

Enum values for ControlStatus

type Cvss

type Cvss struct {

	// The version of CVSS for the CVSS score.
	Version *string

	// The base CVSS score.
	BaseScore *float64

	// The base scoring vector for the CVSS score.
	BaseVector *string
}

CVSS scores from the advisory related to the vulnerability.

type DateFilter

type DateFilter struct {

	// A start date for the date filter.
	Start *string

	// An end date for the date filter.
	End *string

	// A date range for the date filter.
	DateRange *DateRange
}

A date filter for querying findings.

type DateRange

type DateRange struct {

	// A date range unit for the date filter.
	Unit DateRangeUnit

	// A date range value for the date filter.
	Value *int32
}

A date range for the date filter.

type DateRangeUnit

type DateRangeUnit string
const (
	DateRangeUnitDays DateRangeUnit = "DAYS"
)

Enum values for DateRangeUnit

type ImportFindingsError

type ImportFindingsError struct {

	// The message of the error returned by the BatchImportFindings operation.
	//
	// This member is required.
	ErrorMessage *string

	// The code of the error returned by the BatchImportFindings operation.
	//
	// This member is required.
	ErrorCode *string

	// The identifier of the finding that could not be updated.
	//
	// This member is required.
	Id *string
}

The list of the findings that cannot be imported. For each finding, the list provides the error.

type Insight

type Insight struct {

	// The name of a Security Hub insight.
	//
	// This member is required.
	Name *string

	// The ARN of a Security Hub insight.
	//
	// This member is required.
	InsightArn *string

	// One or more attributes used to filter the findings included in the insight. The
	// insight only includes findings that match the criteria defined in the filters.
	//
	// This member is required.
	Filters *AwsSecurityFindingFilters

	// The grouping attribute for the insight's findings. Indicates how to group the
	// matching findings, and identifies the type of item that the insight applies to.
	// For example, if an insight is grouped by resource identifier, then the insight
	// produces a list of resource identifiers.
	//
	// This member is required.
	GroupByAttribute *string
}

Contains information about a Security Hub insight.

type InsightResultValue

type InsightResultValue struct {

	// The value of the attribute that the findings are grouped by for the insight
	// whose results are returned by the GetInsightResults operation.
	//
	// This member is required.
	GroupByAttributeValue *string

	// The number of findings returned for each GroupByAttributeValue.
	//
	// This member is required.
	Count *int32
}

The insight result values returned by the GetInsightResults operation.

type InsightResults

type InsightResults struct {

	// The ARN of the insight whose results are returned by the GetInsightResults
	// operation.
	//
	// This member is required.
	InsightArn *string

	// The list of insight result values returned by the GetInsightResults operation.
	//
	// This member is required.
	ResultValues []*InsightResultValue

	// The attribute that the findings are grouped by for the insight whose results are
	// returned by the GetInsightResults operation.
	//
	// This member is required.
	GroupByAttribute *string
}

The insight results returned by the GetInsightResults operation.

type IntegrationType

type IntegrationType string
const (
	IntegrationTypeSend_findings_to_security_hub      IntegrationType = "SEND_FINDINGS_TO_SECURITY_HUB"
	IntegrationTypeReceive_findings_from_security_hub IntegrationType = "RECEIVE_FINDINGS_FROM_SECURITY_HUB"
)

Enum values for IntegrationType

type InternalException

type InternalException struct {
	Message *string

	Code *string
}

Internal server error.

func (*InternalException) Error

func (e *InternalException) Error() string

func (*InternalException) ErrorCode

func (e *InternalException) ErrorCode() string

func (*InternalException) ErrorFault

func (e *InternalException) ErrorFault() smithy.ErrorFault

func (*InternalException) ErrorMessage

func (e *InternalException) ErrorMessage() string

type InvalidAccessException

type InvalidAccessException struct {
	Message *string

	Code *string
}

AWS Security Hub isn't enabled for the account used to make this request.

func (*InvalidAccessException) Error

func (e *InvalidAccessException) Error() string

func (*InvalidAccessException) ErrorCode

func (e *InvalidAccessException) ErrorCode() string

func (*InvalidAccessException) ErrorFault

func (e *InvalidAccessException) ErrorFault() smithy.ErrorFault

func (*InvalidAccessException) ErrorMessage

func (e *InvalidAccessException) ErrorMessage() string

type InvalidInputException

type InvalidInputException struct {
	Message *string

	Code *string
}

The request was rejected because you supplied an invalid or out-of-range value for an input parameter.

func (*InvalidInputException) Error

func (e *InvalidInputException) Error() string

func (*InvalidInputException) ErrorCode

func (e *InvalidInputException) ErrorCode() string

func (*InvalidInputException) ErrorFault

func (e *InvalidInputException) ErrorFault() smithy.ErrorFault

func (*InvalidInputException) ErrorMessage

func (e *InvalidInputException) ErrorMessage() string

type Invitation

type Invitation struct {

	// The account ID of the Security Hub master account that the invitation was sent
	// from.
	AccountId *string

	// The current status of the association between the member and master accounts.
	MemberStatus *string

	// The ID of the invitation sent to the member account.
	InvitationId *string

	// The timestamp of when the invitation was sent.
	InvitedAt *time.Time
}

Details about an invitation.

type IpFilter

type IpFilter struct {

	// A finding's CIDR value.
	Cidr *string
}

The IP filter for querying findings.

type Ipv6CidrBlockAssociation

type Ipv6CidrBlockAssociation struct {

	// The association ID for the IPv6 CIDR block.
	AssociationId *string

	// Information about the state of the CIDR block.
	CidrBlockState *string

	// The IPv6 CIDR block.
	Ipv6CidrBlock *string
}

An IPV6 CIDR block association.

type KeywordFilter

type KeywordFilter struct {

	// A value for the keyword.
	Value *string
}

A keyword filter for querying findings.

type LimitExceededException

type LimitExceededException struct {
	Message *string

	Code *string
}

The request was rejected because it attempted to create resources beyond the current AWS account limits. The error code describes the limit exceeded.

func (*LimitExceededException) Error

func (e *LimitExceededException) Error() string

func (*LimitExceededException) ErrorCode

func (e *LimitExceededException) ErrorCode() string

func (*LimitExceededException) ErrorFault

func (e *LimitExceededException) ErrorFault() smithy.ErrorFault

func (*LimitExceededException) ErrorMessage

func (e *LimitExceededException) ErrorMessage() string

type LoadBalancerState

type LoadBalancerState struct {

	// The state code. The initial state of the load balancer is provisioning. After
	// the load balancer is fully set up and ready to route traffic, its state is
	// active. If the load balancer could not be set up, its state is failed.
	Code *string

	// A description of the state.
	Reason *string
}

Information about the state of the load balancer.

type Malware

type Malware struct {

	// The file system path of the malware that was observed.
	Path *string

	// The type of the malware that was observed.
	Type MalwareType

	// The name of the malware that was observed.
	//
	// This member is required.
	Name *string

	// The state of the malware that was observed.
	State MalwareState
}

A list of malware related to a finding.

type MalwareState

type MalwareState string
const (
	MalwareStateObserved       MalwareState = "OBSERVED"
	MalwareStateRemoval_failed MalwareState = "REMOVAL_FAILED"
	MalwareStateRemoved        MalwareState = "REMOVED"
)

Enum values for MalwareState

type MalwareType

type MalwareType string
const (
	MalwareTypeAdware               MalwareType = "ADWARE"
	MalwareTypeBlended_threat       MalwareType = "BLENDED_THREAT"
	MalwareTypeBotnet_agent         MalwareType = "BOTNET_AGENT"
	MalwareTypeCoin_miner           MalwareType = "COIN_MINER"
	MalwareTypeExploit_kit          MalwareType = "EXPLOIT_KIT"
	MalwareTypeKeylogger            MalwareType = "KEYLOGGER"
	MalwareTypeMacro                MalwareType = "MACRO"
	MalwareTypePotentially_unwanted MalwareType = "POTENTIALLY_UNWANTED"
	MalwareTypeSpyware              MalwareType = "SPYWARE"
	MalwareTypeRansomware           MalwareType = "RANSOMWARE"
	MalwareTypeRemote_access        MalwareType = "REMOTE_ACCESS"
	MalwareTypeRootkit              MalwareType = "ROOTKIT"
	MalwareTypeTrojan               MalwareType = "TROJAN"
	MalwareTypeVirus                MalwareType = "VIRUS"
	MalwareTypeWorm                 MalwareType = "WORM"
)

Enum values for MalwareType

type MapFilter

type MapFilter struct {

	// The value for the key in the map filter.
	Value *string

	// The condition to apply to a key value when querying for findings with a map
	// filter.
	Comparison MapFilterComparison

	// The key of the map filter.
	Key *string
}

The map filter for querying findings.

type MapFilterComparison

type MapFilterComparison string
const (
	MapFilterComparisonEquals MapFilterComparison = "EQUALS"
)

Enum values for MapFilterComparison

type Member

type Member struct {

	// The AWS account ID of the Security Hub master account associated with this
	// member account.
	MasterId *string

	// A timestamp for the date and time when the invitation was sent to the member
	// account.
	InvitedAt *time.Time

	// The status of the relationship between the member account and its master
	// account.
	MemberStatus *string

	// The timestamp for the date and time when the member account was updated.
	UpdatedAt *time.Time

	// The email address of the member account.
	Email *string

	// The AWS account ID of the member account.
	AccountId *string
}

The details about a member account.

type Network

type Network struct {

	// The source port of network-related information about a finding.
	SourcePort *int32

	// The destination IPv6 address of network-related information about a finding.
	DestinationIpV6 *string

	// The source IPv6 address of network-related information about a finding.
	SourceIpV6 *string

	// The destination IPv4 address of network-related information about a finding.
	DestinationIpV4 *string

	// The destination port of network-related information about a finding.
	DestinationPort *int32

	// The range of open ports that is present on the network.
	OpenPortRange *PortRange

	// The direction of network traffic associated with a finding.
	Direction NetworkDirection

	// The protocol of network-related information about a finding.
	Protocol *string

	// The source domain of network-related information about a finding.
	SourceDomain *string

	// The source IPv4 address of network-related information about a finding.
	SourceIpV4 *string

	// The source media access control (MAC) address of network-related information
	// about a finding.
	SourceMac *string

	// The destination domain of network-related information about a finding.
	DestinationDomain *string
}

The details of network-related information about a finding.

type NetworkDirection

type NetworkDirection string
const (
	NetworkDirectionIn  NetworkDirection = "IN"
	NetworkDirectionOut NetworkDirection = "OUT"
)

Enum values for NetworkDirection

type NetworkHeader

type NetworkHeader struct {

	// The protocol used for the component.
	Protocol *string

	// Information about the destination of the component.
	Destination *NetworkPathComponentDetails

	// Information about the origin of the component.
	Source *NetworkPathComponentDetails
}

Details about a network path component that occurs before or after the current component.

type NetworkPathComponent

type NetworkPathComponent struct {

	// The type of component.
	ComponentType *string

	// The identifier of a component in the network path.
	ComponentId *string

	// Information about the component that comes after the current component in the
	// network path.
	Egress *NetworkHeader

	// Information about the component that comes before the current node in the
	// network path.
	Ingress *NetworkHeader
}

Information about a network path component.

type NetworkPathComponentDetails

type NetworkPathComponentDetails struct {

	// A list of port ranges for the destination.
	PortRanges []*PortRange

	// The IP addresses of the destination.
	Address []*string
}

Information about the destination of the next component in the network path.

type Note

type Note struct {

	// The text of a note.
	//
	// This member is required.
	Text *string

	// The timestamp of when the note was updated.
	//
	// This member is required.
	UpdatedAt *string

	// The principal that created a note.
	//
	// This member is required.
	UpdatedBy *string
}

A user-defined note added to a finding.

type NoteUpdate

type NoteUpdate struct {

	// The principal that updated the note.
	//
	// This member is required.
	UpdatedBy *string

	// The updated note text.
	//
	// This member is required.
	Text *string
}

The updated note.

type NumberFilter

type NumberFilter struct {

	// The greater-than-equal condition to be applied to a single field when querying
	// for findings.
	Gte *float64

	// The equal-to condition to be applied to a single field when querying for
	// findings.
	Eq *float64

	// The less-than-equal condition to be applied to a single field when querying for
	// findings.
	Lte *float64
}

A number filter for querying findings.

type Partition

type Partition string
const (
	PartitionAws        Partition = "aws"
	PartitionAws_cn     Partition = "aws-cn"
	PartitionAws_us_gov Partition = "aws-us-gov"
)

Enum values for Partition

type PortRange

type PortRange struct {

	// The last port in the port range.
	End *int32

	// The first port in the port range.
	Begin *int32
}

A range of ports.

type ProcessDetails

type ProcessDetails struct {

	// The process ID.
	Pid *int32

	// The date/time that the process was launched.
	LaunchedAt *string

	// The parent process ID.
	ParentPid *int32

	// The date and time when the process was terminated.
	TerminatedAt *string

	// The path to the process executable.
	Path *string

	// The name of the process.
	Name *string
}

The details of process-related information about a finding.

type Product

type Product struct {

	// The name of the product.
	ProductName *string

	// A description of the product.
	Description *string

	// The resource policy associated with the product.
	ProductSubscriptionResourcePolicy *string

	// The URL for the page that contains more information about the product.
	MarketplaceUrl *string

	// The name of the company that provides the product.
	CompanyName *string

	// The types of integration that the product supports. Available values are the
	// following.
	//
	//     * SEND_FINDINGS_TO_SECURITY_HUB - Indicates that the integration
	// sends findings to Security Hub.
	//
	//     * RECEIVE_FINDINGS_FROM_SECURITY_HUB -
	// Indicates that the integration receives findings from Security Hub.
	IntegrationTypes []IntegrationType

	// The ARN assigned to the product.
	//
	// This member is required.
	ProductArn *string

	// The URL used to activate the product.
	ActivationUrl *string

	// The categories assigned to the product.
	Categories []*string
}

Contains details about a product.

type Recommendation

type Recommendation struct {

	// Describes the recommended steps to take to remediate an issue identified in a
	// finding.
	Text *string

	// A URL to a page or site that contains information about how to remediate a
	// finding.
	Url *string
}

A recommendation on how to remediate the issue identified in a finding.

type RecordState

type RecordState string
const (
	RecordStateActive   RecordState = "ACTIVE"
	RecordStateArchived RecordState = "ARCHIVED"
)

Enum values for RecordState

type RelatedFinding

type RelatedFinding struct {

	// The ARN of the product that generated a related finding.
	//
	// This member is required.
	ProductArn *string

	// The product-generated identifier for a related finding.
	//
	// This member is required.
	Id *string
}

Details about a related finding.

type Remediation

type Remediation struct {

	// A recommendation on the steps to take to remediate the issue identified by a
	// finding.
	Recommendation *Recommendation
}

Details about the remediation steps for a finding.

type Resource

type Resource struct {

	// The canonical AWS external Region name where this resource is located.
	Region *string

	// The type of the resource that details are provided for. If possible, set Type to
	// one of the supported resource types. For example, if the resource is an EC2
	// instance, then set Type to AwsEc2Instance. If the resource does not match any of
	// the provided types, then set Type to Other.
	//
	// This member is required.
	Type *string

	// A list of AWS tags associated with a resource at the time the finding was
	// processed.
	Tags map[string]*string

	// Additional details about the resource related to a finding.
	Details *ResourceDetails

	// The canonical AWS partition name that the Region is assigned to.
	Partition Partition

	// The canonical identifier for the given resource type.
	//
	// This member is required.
	Id *string
}

A resource related to a finding.

type ResourceConflictException

type ResourceConflictException struct {
	Message *string

	Code *string
}

The resource specified in the request conflicts with an existing resource.

func (*ResourceConflictException) Error

func (e *ResourceConflictException) Error() string

func (*ResourceConflictException) ErrorCode

func (e *ResourceConflictException) ErrorCode() string

func (*ResourceConflictException) ErrorFault

func (*ResourceConflictException) ErrorMessage

func (e *ResourceConflictException) ErrorMessage() string

type ResourceDetails

type ResourceDetails struct {

	// Details about an Amazon S3 object related to a finding.
	AwsS3Object *AwsS3ObjectDetails

	// Details about an SNS topic.
	AwsSnsTopic *AwsSnsTopicDetails

	// Details for an AWS CodeBuild project.
	AwsCodeBuildProject *AwsCodeBuildProjectDetails

	// Details about a container resource related to a finding.
	Container *ContainerDetails

	// Details about an Amazon EC2 instance related to a finding.
	AwsEc2Instance *AwsEc2InstanceDetails

	// Details for an EC2 VPC.
	AwsEc2Vpc *AwsEc2VpcDetails

	// Details about a KMS key.
	AwsKmsKey *AwsKmsKeyDetails

	// Details for an autoscaling group.
	AwsAutoScalingAutoScalingGroup *AwsAutoScalingAutoScalingGroupDetails

	// Details about a CloudFront distribution.
	AwsCloudFrontDistribution *AwsCloudFrontDistributionDetails

	// Details about a Lambda function.
	AwsLambdaFunction *AwsLambdaFunctionDetails

	// Details about an Amazon S3 bucket related to a finding.
	AwsS3Bucket *AwsS3BucketDetails

	// Details for an Amazon EC2 network interface.
	AwsEc2NetworkInterface *AwsEc2NetworkInterfaceDetails

	// Details about an SQS queue.
	AwsSqsQueue *AwsSqsQueueDetails

	// Details for an EC2 security group.
	AwsEc2SecurityGroup *AwsEc2SecurityGroupDetails

	// Details about an IAM role.
	AwsIamRole *AwsIamRoleDetails

	// Details for an Elasticsearch domain.
	AwsElasticsearchDomain *AwsElasticsearchDomainDetails

	// Details for an Amazon RDS database instance.
	AwsRdsDbInstance *AwsRdsDbInstanceDetails

	// Details for an EC2 volume.
	AwsEc2Volume *AwsEc2VolumeDetails

	// Details about a load balancer.
	AwsElbv2LoadBalancer *AwsElbv2LoadBalancerDetails

	// Details for a Lambda layer version.
	AwsLambdaLayerVersion *AwsLambdaLayerVersionDetails

	// Details about an IAM access key related to a finding.
	AwsIamAccessKey *AwsIamAccessKeyDetails

	// Details for a WAF WebACL.
	AwsWafWebAcl *AwsWafWebAclDetails

	// Details about a resource that are not available in a type-specific details
	// object. Use the Other object in the following cases.
	//
	//     * The type-specific
	// object does not contain all of the fields that you want to populate. In this
	// case, first use the type-specific object to populate those fields. Use the Other
	// object to populate the fields that are missing from the type-specific object.
	//
	//
	// * The resource type does not have a corresponding object. This includes
	// resources for which the type is Other.
	Other map[string]*string
}

Additional details about a resource related to a finding. To provide the details, use the object that corresponds to the resource type. For example, if the resource type is AwsEc2Instance, then you use the AwsEc2Instance object to provide the details. If the type-specific object does not contain all of the fields you want to populate, then you use the Other object to populate those additional fields. You also use the Other object to populate the details when the selected type does not have a corresponding object.

type ResourceNotFoundException

type ResourceNotFoundException struct {
	Message *string

	Code *string
}

The request was rejected because we can't find the specified resource.

func (*ResourceNotFoundException) Error

func (e *ResourceNotFoundException) Error() string

func (*ResourceNotFoundException) ErrorCode

func (e *ResourceNotFoundException) ErrorCode() string

func (*ResourceNotFoundException) ErrorFault

func (*ResourceNotFoundException) ErrorMessage

func (e *ResourceNotFoundException) ErrorMessage() string

type Result

type Result struct {

	// The reason that the account was not processed.
	ProcessingResult *string

	// An AWS account ID of the account that was not processed.
	AccountId *string
}

Details about the account that was not processed.

type Severity

type Severity struct {

	// The native severity from the finding product that generated the finding.
	Original *string

	// Deprecated. The normalized severity of a finding. This attribute is being
	// deprecated. Instead of providing Normalized, provide Label. If you provide Label
	// and do not provide Normalized, then Normalized is set automatically as
	// follows.
	//
	//     * INFORMATIONAL - 0
	//
	//     * LOW - 1
	//
	//     * MEDIUM - 40
	//
	//     * HIGH
	// - 70
	//
	//     * CRITICAL - 90
	Normalized *int32

	// Deprecated. This attribute is being deprecated. Instead of providing Product,
	// provide Original. The native severity as defined by the AWS service or
	// integrated partner product that generated the finding.
	Product *float64

	// The severity value of the finding. The allowed values are the following.
	//
	//     *
	// INFORMATIONAL - No issue was found.
	//
	//     * LOW - The issue does not require
	// action on its own.
	//
	//     * MEDIUM - The issue must be addressed but not
	// urgently.
	//
	//     * HIGH - The issue must be addressed as a priority.
	//
	//     *
	// CRITICAL - The issue must be remediated immediately to avoid it escalating.
	//
	// If
	// you provide Normalized and do not provide Label, then Label is set automatically
	// as follows.
	//
	//     * 0 - INFORMATIONAL
	//
	//     * 1–39 - LOW
	//
	//     * 40–69 - MEDIUM
	//
	//
	// * 70–89 - HIGH
	//
	//     * 90–100 - CRITICAL
	Label SeverityLabel
}

The severity of the finding. The finding provider can provide the initial severity, but cannot update it after that. The severity can only be updated by a master account. It cannot be updated by a member account. The finding must have either Label or Normalized populated. If only one of these attributes is populated, then Security Hub automatically populates the other one. If neither attribute is populated, then the finding is invalid. Label is the preferred attribute.

type SeverityLabel

type SeverityLabel string
const (
	SeverityLabelInformational SeverityLabel = "INFORMATIONAL"
	SeverityLabelLow           SeverityLabel = "LOW"
	SeverityLabelMedium        SeverityLabel = "MEDIUM"
	SeverityLabelHigh          SeverityLabel = "HIGH"
	SeverityLabelCritical      SeverityLabel = "CRITICAL"
)

Enum values for SeverityLabel

type SeverityRating

type SeverityRating string
const (
	SeverityRatingLow      SeverityRating = "LOW"
	SeverityRatingMedium   SeverityRating = "MEDIUM"
	SeverityRatingHigh     SeverityRating = "HIGH"
	SeverityRatingCritical SeverityRating = "CRITICAL"
)

Enum values for SeverityRating

type SeverityUpdate

type SeverityUpdate struct {

	// The normalized severity for the finding. This attribute is to be deprecated in
	// favor of Label. If you provide Normalized and do not provide Label, Label is set
	// automatically as follows.
	//
	//     * 0 - INFORMATIONAL
	//
	//     * 1–39 - LOW
	//
	//     *
	// 40–69 - MEDIUM
	//
	//     * 70–89 - HIGH
	//
	//     * 90–100 - CRITICAL
	Normalized *int32

	// The severity value of the finding. The allowed values are the following.
	//
	//     *
	// INFORMATIONAL - No issue was found.
	//
	//     * LOW - The issue does not require
	// action on its own.
	//
	//     * MEDIUM - The issue must be addressed but not
	// urgently.
	//
	//     * HIGH - The issue must be addressed as a priority.
	//
	//     *
	// CRITICAL - The issue must be remediated immediately to avoid it escalating.
	Label SeverityLabel

	// The native severity as defined by the AWS service or integrated partner product
	// that generated the finding.
	Product *float64
}

Updates to the severity information for a finding.

type SoftwarePackage

type SoftwarePackage struct {

	// The name of the software package.
	Name *string

	// The version of the software package.
	Version *string

	// The release of the software package.
	Release *string

	// The epoch of the software package.
	Epoch *string

	// The architecture used for the software package.
	Architecture *string
}

Information about a software package.

type SortCriterion

type SortCriterion struct {

	// The finding attribute used to sort findings.
	Field *string

	// The order used to sort findings.
	SortOrder SortOrder
}

A collection of finding attributes used to sort findings.

type SortOrder

type SortOrder string
const (
	SortOrderAscending  SortOrder = "asc"
	SortOrderDescending SortOrder = "desc"
)

Enum values for SortOrder

type Standard

type Standard struct {

	// The ARN of a standard.
	StandardsArn *string

	// Whether the standard is enabled by default. When Security Hub is enabled from
	// the console, if a standard is enabled by default, the check box for that
	// standard is selected by default. When Security Hub is enabled using the
	// EnableSecurityHub API operation, the standard is enabled by default unless
	// EnableDefaultStandards is set to false.
	EnabledByDefault *bool

	// A description of the standard.
	Description *string

	// The name of the standard.
	Name *string
}

Provides information about a specific standard.

type StandardsControl

type StandardsControl struct {

	// A link to remediation information for the control in the Security Hub user
	// documentation.
	RemediationUrl *string

	// The current status of the security standard control. Indicates whether the
	// control is enabled or disabled. Security Hub does not check against disabled
	// controls.
	ControlStatus ControlStatus

	// The list of requirements that are related to this control.
	RelatedRequirements []*string

	// The identifier of the security standard control.
	ControlId *string

	// The longer description of the security standard control. Provides information
	// about what the control is checking for.
	Description *string

	// The title of the security standard control.
	Title *string

	// The reason provided for the most recent change in status for the control.
	DisabledReason *string

	// The severity of findings generated from this security standard control. The
	// finding severity is based on an assessment of how easy it would be to compromise
	// AWS resources if the issue is detected.
	SeverityRating SeverityRating

	// The date and time that the status of the security standard control was most
	// recently updated.
	ControlStatusUpdatedAt *time.Time

	// The ARN of the security standard control.
	StandardsControlArn *string
}

Details for an individual security standard control.

type StandardsStatus

type StandardsStatus string
const (
	StandardsStatusPending    StandardsStatus = "PENDING"
	StandardsStatusReady      StandardsStatus = "READY"
	StandardsStatusFailed     StandardsStatus = "FAILED"
	StandardsStatusDeleting   StandardsStatus = "DELETING"
	StandardsStatusIncomplete StandardsStatus = "INCOMPLETE"
)

Enum values for StandardsStatus

type StandardsSubscription

type StandardsSubscription struct {

	// The status of the standards subscription.
	//
	// This member is required.
	StandardsStatus StandardsStatus

	// The ARN of a standard.
	//
	// This member is required.
	StandardsArn *string

	// The ARN of a resource that represents your subscription to a supported standard.
	//
	// This member is required.
	StandardsSubscriptionArn *string

	// A key-value pair of input for the standard.
	//
	// This member is required.
	StandardsInput map[string]*string
}

A resource that represents your subscription to a supported standard.

type StandardsSubscriptionRequest

type StandardsSubscriptionRequest struct {

	// A key-value pair of input for the standard.
	StandardsInput map[string]*string

	// The ARN of the standard that you want to enable. To view the list of available
	// standards and their ARNs, use the DescribeStandards () operation.
	//
	// This member is required.
	StandardsArn *string
}

The standard that you want to enable.

type StatusReason

type StatusReason struct {

	// A code that represents a reason for the control status. For the list of status
	// reason codes and their meanings, see Standards-related information in the ASFF
	// (https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-results.html#securityhub-standards-results-asff)
	// in the AWS Security Hub User Guide.
	//
	// This member is required.
	ReasonCode *string

	// The corresponding description for the status reason code.
	Description *string
}

Provides additional context for the value of Compliance.Status.

type StringFilter

type StringFilter struct {

	// The condition to be applied to a string value when querying for findings.
	Comparison StringFilterComparison

	// The string filter value.
	Value *string
}

A string filter for querying findings.

type StringFilterComparison

type StringFilterComparison string
const (
	StringFilterComparisonEquals StringFilterComparison = "EQUALS"
	StringFilterComparisonPrefix StringFilterComparison = "PREFIX"
)

Enum values for StringFilterComparison

type ThreatIntelIndicator

type ThreatIntelIndicator struct {

	// The value of a threat intelligence indicator.
	Value *string

	// The URL to the page or site where you can get more information about the threat
	// intelligence indicator.
	SourceUrl *string

	// The type of threat intelligence indicator.
	Type ThreatIntelIndicatorType

	// The category of a threat intelligence indicator.
	Category ThreatIntelIndicatorCategory

	// The source of the threat intelligence indicator.
	Source *string

	// The date and time when the most recent instance of a threat intelligence
	// indicator was observed.
	LastObservedAt *string
}

Details about the threat intelligence related to a finding.

type ThreatIntelIndicatorCategory

type ThreatIntelIndicatorCategory string
const (
	ThreatIntelIndicatorCategoryBackdoor            ThreatIntelIndicatorCategory = "BACKDOOR"
	ThreatIntelIndicatorCategoryCard_stealer        ThreatIntelIndicatorCategory = "CARD_STEALER"
	ThreatIntelIndicatorCategoryCommand_and_control ThreatIntelIndicatorCategory = "COMMAND_AND_CONTROL"
	ThreatIntelIndicatorCategoryDrop_site           ThreatIntelIndicatorCategory = "DROP_SITE"
	ThreatIntelIndicatorCategoryExploit_site        ThreatIntelIndicatorCategory = "EXPLOIT_SITE"
	ThreatIntelIndicatorCategoryKeylogger           ThreatIntelIndicatorCategory = "KEYLOGGER"
)

Enum values for ThreatIntelIndicatorCategory

type ThreatIntelIndicatorType

type ThreatIntelIndicatorType string
const (
	ThreatIntelIndicatorTypeDomain        ThreatIntelIndicatorType = "DOMAIN"
	ThreatIntelIndicatorTypeEmail_address ThreatIntelIndicatorType = "EMAIL_ADDRESS"
	ThreatIntelIndicatorTypeHash_md5      ThreatIntelIndicatorType = "HASH_MD5"
	ThreatIntelIndicatorTypeHash_sha1     ThreatIntelIndicatorType = "HASH_SHA1"
	ThreatIntelIndicatorTypeHash_sha256   ThreatIntelIndicatorType = "HASH_SHA256"
	ThreatIntelIndicatorTypeHash_sha512   ThreatIntelIndicatorType = "HASH_SHA512"
	ThreatIntelIndicatorTypeIpv4_address  ThreatIntelIndicatorType = "IPV4_ADDRESS"
	ThreatIntelIndicatorTypeIpv6_address  ThreatIntelIndicatorType = "IPV6_ADDRESS"
	ThreatIntelIndicatorTypeMutex         ThreatIntelIndicatorType = "MUTEX"
	ThreatIntelIndicatorTypeProcess       ThreatIntelIndicatorType = "PROCESS"
	ThreatIntelIndicatorTypeUrl           ThreatIntelIndicatorType = "URL"
)

Enum values for ThreatIntelIndicatorType

type VerificationState

type VerificationState string
const (
	VerificationStateUnknown         VerificationState = "UNKNOWN"
	VerificationStateTrue_positive   VerificationState = "TRUE_POSITIVE"
	VerificationStateFalse_positive  VerificationState = "FALSE_POSITIVE"
	VerificationStateBenign_positive VerificationState = "BENIGN_POSITIVE"
)

Enum values for VerificationState

type Vulnerability

type Vulnerability struct {

	// List of vulnerabilities that are related to this vulnerability.
	RelatedVulnerabilities []*string

	// CVSS scores from the advisory related to the vulnerability.
	Cvss []*Cvss

	// Information about the vendor that generates the vulnerability report.
	Vendor *VulnerabilityVendor

	// List of software packages that have the vulnerability.
	VulnerablePackages []*SoftwarePackage

	// The identifier of the vulnerability.
	//
	// This member is required.
	Id *string

	// A list of URLs that provide additional information about the vulnerability.
	ReferenceUrls []*string
}

A vulnerability associated with a finding.

type VulnerabilityVendor

type VulnerabilityVendor struct {

	// The datetime when the vulnerability advisory was created.
	VendorCreatedAt *string

	// The datetime when the vulnerability advisory was last updated.
	VendorUpdatedAt *string

	// The severity that the vendor assigned to the vulnerability.
	VendorSeverity *string

	// The URL of the vulnerability advisory.
	Url *string

	// The name of the vendor.
	//
	// This member is required.
	Name *string
}

A vendor that generates a vulnerability report.

type WafAction

type WafAction struct {

	// Specifies how you want AWS WAF to respond to requests that match the settings in
	// a rule. Valid settings include the following:
	//
	//     * ALLOW - AWS WAF allows
	// requests
	//
	//     * BLOCK - AWS WAF blocks requests
	//
	//     * COUNT - AWS WAF
	// increments a counter of the requests that match all of the conditions in the
	// rule. AWS WAF then continues to inspect the web request based on the remaining
	// rules in the web ACL. You can't specify COUNT for the default action for a
	// WebACL.
	Type *string
}

Details about the action that CloudFront or AWS WAF takes when a web request matches the conditions in the rule.

type WafExcludedRule

type WafExcludedRule struct {

	// The unique identifier for the rule to exclude from the rule group.
	RuleId *string
}

Details about a rule to exclude from a rule group.

type WafOverrideAction

type WafOverrideAction struct {

	// COUNT overrides the action specified by the individual rule within a RuleGroup .
	// If set to NONE, the rule's action takes place.
	Type *string
}

Details about an override action for a rule.

type Workflow

type Workflow struct {

	// The status of the investigation into the finding. The allowed values are the
	// following.
	//
	//     * NEW - The initial state of a finding, before it is reviewed.
	//
	//
	// * NOTIFIED - Indicates that you notified the resource owner about the security
	// issue. Used when the initial reviewer is not the resource owner, and needs
	// intervention from the resource owner.
	//
	//     * SUPPRESSED - The finding will not
	// be reviewed again and will not be acted upon.
	//
	//     * RESOLVED - The finding was
	// reviewed and remediated and is now considered resolved.
	Status WorkflowStatus
}

Provides information about the status of the investigation into a finding.

type WorkflowState

type WorkflowState string
const (
	WorkflowStateNew         WorkflowState = "NEW"
	WorkflowStateAssigned    WorkflowState = "ASSIGNED"
	WorkflowStateIn_progress WorkflowState = "IN_PROGRESS"
	WorkflowStateDeferred    WorkflowState = "DEFERRED"
	WorkflowStateResolved    WorkflowState = "RESOLVED"
)

Enum values for WorkflowState

type WorkflowStatus

type WorkflowStatus string
const (
	WorkflowStatusNew        WorkflowStatus = "NEW"
	WorkflowStatusNotified   WorkflowStatus = "NOTIFIED"
	WorkflowStatusResolved   WorkflowStatus = "RESOLVED"
	WorkflowStatusSuppressed WorkflowStatus = "SUPPRESSED"
)

Enum values for WorkflowStatus

type WorkflowUpdate

type WorkflowUpdate struct {

	// The status of the investigation into the finding. The allowed values are the
	// following.
	//
	//     * NEW - The initial state of a finding, before it is reviewed.
	//
	//
	// * NOTIFIED - Indicates that you notified the resource owner about the security
	// issue. Used when the initial reviewer is not the resource owner, and needs
	// intervention from the resource owner.
	//
	//     * RESOLVED - The finding was reviewed
	// and remediated and is now considered resolved.
	//
	//     * SUPPRESSED - The finding
	// will not be reviewed again and will not be acted upon.
	Status WorkflowStatus
}

Used to update information about the investigation into the finding.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL