2026/09/28 - AWS Security Agent - 7 updated api methods
Changes Run automated penetration tests directly from your CI-CD pipeline to scan code changes before they ship, gating deployments on the findings
{'deleted': {'cicdConfiguration': {'enabled': 'boolean'}}}
Deletes one or more pentests from an agent space.
See also: AWS API Documentation
Request Syntax
client.batch_delete_pentests(
pentestIds=[
'string',
],
agentSpaceId='string'
)
list
[REQUIRED]
The list of pentest identifiers to delete.
(string) --
string
[REQUIRED]
The unique identifier of the agent space that contains the pentests to delete.
dict
Response Syntax
{
'deleted': [
{
'pentestId': 'string',
'agentSpaceId': 'string',
'title': 'string',
'assets': {
'endpoints': [
{
'uri': 'string'
},
],
'actors': [
{
'identifier': 'string',
'uris': [
'string',
],
'authentication': {
'providerType': 'SECRETS_MANAGER'|'AWS_LAMBDA'|'AWS_IAM_ROLE'|'AWS_INTERNAL',
'value': 'string'
},
'description': 'string',
'enableEmailMfa': True|False,
'mfaForwardingAddress': 'string'
},
],
'documents': [
{
's3Location': 'string',
'artifactId': 'string',
'integratedDocument': {
'integrationId': 'string',
'resourceId': 'string'
}
},
],
'sourceCode': [
{
's3Location': 'string'
},
],
'integratedRepositories': [
{
'integrationId': 'string',
'providerResourceId': 'string',
'branch': 'string'
},
],
'trustedCaCertificates': [
{
'source': {
'inlinePem': 'string',
'artifactId': 'string',
's3Location': 'string'
}
},
]
},
'excludeRiskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'serviceRole': 'string',
'logConfig': {
'logGroup': 'string',
'logStream': 'string'
},
'vpcConfig': {
'vpcArn': 'string',
'securityGroupArns': [
'string',
],
'subnetArns': [
'string',
]
},
'networkTrafficConfig': {
'rules': [
{
'effect': 'ALLOW'|'DENY',
'pattern': 'string',
'networkTrafficRuleType': 'URL'
},
],
'customHeaders': [
{
'name': 'string',
'value': 'string'
},
]
},
'codeRemediationStrategy': 'AUTOMATIC'|'DISABLED',
'cleanUpStrategy': 'BEST_EFFORT_DELETE'|'RETAIN_ALL',
'disableManagedSkills': [
'FINDING_PERSONALIZATION'|'LOGIN_OPTIMIZATION',
],
'maxTaskHours': 123.0,
'reportDestination': {
'integrationId': 'string',
'containerId': 'string',
'parentId': 'string',
'documentId': 'string'
},
'reportFilters': {
'riskLevels': [
'UNKNOWN'|'INFORMATIONAL'|'LOW'|'MEDIUM'|'HIGH'|'CRITICAL',
],
'confidenceLevels': [
'FALSE_POSITIVE'|'UNCONFIRMED'|'LOW'|'MEDIUM'|'HIGH',
],
'statuses': [
'ACTIVE'|'RESOLVED'|'ACCEPTED'|'FALSE_POSITIVE',
],
'riskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'findingTypes': [
'string',
],
'taskStatuses': [
'IN_PROGRESS'|'ABORTED'|'COMPLETED'|'INTERNAL_ERROR'|'FAILED',
],
'annotationNotes': True|False,
'complianceReport': True|False
},
'cicdConfiguration': {
'enabled': True|False
},
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1)
},
],
'failed': [
{
'pentestId': 'string',
'reason': 'string'
},
]
}
Response Structure
(dict) --
Output for the BatchDeletePentests operation.
deleted (list) --
The list of pentests that were successfully deleted.
(dict) --
Represents a pentest configuration that defines the parameters for security testing, including target assets, risk type exclusions, and infrastructure settings.
pentestId (string) --
The unique identifier of the pentest.
agentSpaceId (string) --
The unique identifier of the agent space that contains the pentest.
title (string) --
The title of the pentest.
assets (dict) --
The assets included in the pentest.
endpoints (list) --
The list of endpoints to test during the pentest.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
actors (list) --
The list of actors used during penetration testing.
(dict) --
Represents an actor used during penetration testing. An actor defines a user or entity that interacts with the target application, including authentication credentials and target URIs.
identifier (string) --
The unique identifier for the actor.
uris (list) --
The list of URIs that the actor targets during testing.
(string) --
authentication (dict) --
The authentication configuration for the actor.
providerType (string) --
The type of authentication provider. Valid values include SECRETS_MANAGER, AWS_LAMBDA, AWS_IAM_ROLE, and AWS_INTERNAL.
value (string) --
The authentication value, such as a secret ARN, Lambda function ARN, or IAM role ARN, depending on the provider type.
description (string) --
A description of the actor.
enableEmailMfa (boolean) --
Whether email-based MFA is enabled for this actor.
mfaForwardingAddress (string) --
Server-generated email forwarding address for receiving MFA codes.
documents (list) --
The list of documents that provide context for the pentest.
(dict) --
Represents a document that provides context for security testing.
s3Location (string) --
The Amazon S3 location of the document.
artifactId (string) --
The unique identifier of the artifact associated with the document.
integratedDocument (dict) --
A reference to a document in an integrated third-party provider.
integrationId (string) --
The identifier of the integration that provides access to the document.
resourceId (string) --
The provider-specific resource identifier for the document.
sourceCode (list) --
The list of source code repositories to analyze during the pentest.
(dict) --
Represents a source code repository used for security analysis during a pentest.
s3Location (string) --
The Amazon S3 location of the source code repository archive.
integratedRepositories (list) --
The list of integrated repositories associated with the pentest.
(dict) --
Represents a code repository that is integrated with the service through a third-party provider.
integrationId (string) --
The unique identifier of the integration that provides access to the repository.
providerResourceId (string) --
The provider-specific resource identifier for the repository.
branch (string) --
An optional override for the repository branch.
trustedCaCertificates (list) --
The trust anchors used to validate target endpoint TLS certificates. Provide these for endpoints served by a private or internal certificate authority (CA), an intermediate CA, or a self-signed certificate.
(dict) --
A trust anchor used when validating a target endpoint's TLS certificate.
source (dict) --
The source that Security Agent reads the certificate from.
inlinePem (string) --
A PEM-encoded X.509 certificate supplied inline.
artifactId (string) --
The artifact ID of an uploaded certificate file.
s3Location (string) --
The Amazon S3 location URI of a customer-staged certificate.
excludeRiskTypes (list) --
The list of risk types excluded from the pentest.
(string) --
Type of security risk.
serviceRole (string) --
The IAM service role used for the pentest.
logConfig (dict) --
The CloudWatch Logs configuration for the pentest.
logGroup (string) --
The name of the CloudWatch log group.
logStream (string) --
The name of the CloudWatch log stream.
vpcConfig (dict) --
The VPC configuration for the pentest.
vpcArn (string) --
The Amazon Resource Name (ARN) or ID of the VPC.
securityGroupArns (list) --
The Amazon Resource Names (ARNs) or IDs of the security groups for the VPC configuration.
(string) --
ARN or ID of a security group.
subnetArns (list) --
The Amazon Resource Names (ARNs) or IDs of the subnets for the VPC configuration.
(string) --
ARN or ID of a subnet.
networkTrafficConfig (dict) --
The network traffic configuration for the pentest.
rules (list) --
The list of network traffic rules that control which URLs are allowed or denied during testing.
(dict) --
A rule that controls network traffic during penetration testing by allowing or denying traffic to specific URL patterns.
effect (string) --
The effect of the rule. Valid values are ALLOW and DENY.
pattern (string) --
The URL pattern to match for the rule.
networkTrafficRuleType (string) --
The type of the network traffic rule. Currently, only URL is supported.
customHeaders (list) --
The list of custom HTTP headers to include in network traffic during testing.
(dict) --
A custom HTTP header to include in network traffic during penetration testing.
name (string) --
The name of the custom header.
value (string) --
The value of the custom header.
codeRemediationStrategy (string) --
The code remediation strategy for the pentest.
cleanUpStrategy (string) --
Strategy for cleaning up resources after pentest job completion.
disableManagedSkills (list) --
A list of managed skills to disable for this pentest. Valid values include FINDING_PERSONALIZATION and LOGIN_OPTIMIZATION.
(string) --
Type of managed skill that can be enabled or disabled for a pentest.
maxTaskHours (float) --
The maximum number of billable task hours allowed for jobs started from this pentest. If a job reaches the configured limit, it is gracefully stopped. If not set, jobs run to completion with no budget cap.
reportDestination (dict) --
The destination for publishing scan reports to an integrated document provider.
integrationId (string) --
The integration identifier for the document provider.
containerId (string) --
The container identifier where the report will be published.
parentId (string) --
The parent document identifier under which the report will be created.
documentId (string) --
The existing document identifier to update instead of creating a new document.
reportFilters (dict) --
The report-generation filters applied when the report is exported.
riskLevels (list) --
The severity levels to include in the report.
(string) --
Risk severity level.
confidenceLevels (list) --
The confidence levels to include in the report.
(string) --
Finding confidence level.
statuses (list) --
The finding statuses to include in the report.
(string) --
Finding status.
riskTypes (list) --
The risk types to include in the report.
(string) --
Type of security risk.
findingTypes (list) --
The finding types to include in the report.
(string) --
A single report-filter value for one filter dimension.
taskStatuses (list) --
The task execution statuses to include in the report's task table.
(string) --
Execution status of a task.
annotationNotes (boolean) --
Whether to include reviewer annotation notes under each finding.
complianceReport (boolean) --
Whether to include the compliance-ready report additions.
cicdConfiguration (dict) --
The CI/CD pentesting configuration for this pentest. Present when the pentest is set up to run from a CI/CD pipeline.
enabled (boolean) --
Whether CI/CD pentesting is enabled for this pentest.
createdAt (datetime) --
The date and time the pentest was created, in UTC format.
updatedAt (datetime) --
The date and time the pentest was last updated, in UTC format.
failed (list) --
The list of pentests that failed to delete, including the reason for each failure.
(dict) --
Contains information about a pentest that failed to delete.
pentestId (string) --
The unique identifier of the pentest that failed to delete.
reason (string) --
The reason the pentest failed to delete.
{'pentestJobs': {'cicdConfiguration': {'enabled': 'boolean'},
'jobType': {'CICD'},
'reportUrl': 'string',
'scopeChanges': [{'baseCommitSha': 'string',
'headCommitSha': 'string',
'integrationId': 'string',
'providerResourceId': 'string',
'triggerRunId': 'string'}],
'scopeResult': {'decision': 'IN_SCOPE | SCOPED_OUT | '
'SCOPE_CONFLICT',
'reason': 'string'}}}
Retrieves information about one or more pentest jobs in an agent space.
See also: AWS API Documentation
Request Syntax
client.batch_get_pentest_jobs(
pentestJobIds=[
'string',
],
agentSpaceId='string'
)
list
[REQUIRED]
The list of pentest job identifiers to retrieve.
(string) --
string
[REQUIRED]
The unique identifier of the agent space that contains the pentest jobs.
dict
Response Syntax
{
'pentestJobs': [
{
'pentestJobId': 'string',
'pentestId': 'string',
'title': 'string',
'overview': 'string',
'status': 'IN_PROGRESS'|'STOPPING'|'STOPPED'|'FAILED'|'COMPLETED',
'endpoints': [
{
'uri': 'string'
},
],
'actors': [
{
'identifier': 'string',
'uris': [
'string',
],
'authentication': {
'providerType': 'SECRETS_MANAGER'|'AWS_LAMBDA'|'AWS_IAM_ROLE'|'AWS_INTERNAL',
'value': 'string'
},
'description': 'string',
'enableEmailMfa': True|False,
'mfaForwardingAddress': 'string'
},
],
'documents': [
{
's3Location': 'string',
'artifactId': 'string',
'integratedDocument': {
'integrationId': 'string',
'resourceId': 'string'
}
},
],
'sourceCode': [
{
's3Location': 'string'
},
],
'excludePaths': [
{
'uri': 'string'
},
],
'allowedDomains': [
{
'uri': 'string'
},
],
'excludeRiskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'steps': [
{
'name': 'PREFLIGHT'|'STATIC_ANALYSIS'|'PENTEST'|'FINALIZING'|'VALIDATION',
'status': 'NOT_STARTED'|'IN_PROGRESS'|'COMPLETED'|'FAILED'|'STOPPED',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1)
},
],
'executionContext': [
{
'contextType': 'ERROR'|'CLIENT_ERROR'|'WARNING'|'INFO',
'context': 'string',
'timestamp': datetime(2015, 1, 1)
},
],
'serviceRole': 'string',
'logConfig': {
'logGroup': 'string',
'logStream': 'string'
},
'vpcConfig': {
'vpcArn': 'string',
'securityGroupArns': [
'string',
],
'subnetArns': [
'string',
]
},
'networkTrafficConfig': {
'rules': [
{
'effect': 'ALLOW'|'DENY',
'pattern': 'string',
'networkTrafficRuleType': 'URL'
},
],
'customHeaders': [
{
'name': 'string',
'value': 'string'
},
]
},
'errorInformation': {
'code': 'CLIENT_ERROR'|'INTERNAL_ERROR'|'STOPPED_BY_USER',
'message': 'string'
},
'integratedRepositories': [
{
'integrationId': 'string',
'providerResourceId': 'string',
'branch': 'string'
},
],
'trustedCaCertificates': [
{
'source': {
'inlinePem': 'string',
'artifactId': 'string',
's3Location': 'string'
}
},
],
'codeRemediationStrategy': 'AUTOMATIC'|'DISABLED',
'cleanUpStrategy': 'BEST_EFFORT_DELETE'|'RETAIN_ALL',
'disableManagedSkills': [
'FINDING_PERSONALIZATION'|'LOGIN_OPTIMIZATION',
],
'maxTaskHours': 123.0,
'jobType': 'FULL'|'REVALIDATION'|'CICD',
'selectedFindingIds': [
'string',
],
'reportDestination': {
'integrationId': 'string',
'containerId': 'string',
'parentId': 'string',
'documentId': 'string'
},
'reportUrl': 'string',
'scopeResult': {
'decision': 'IN_SCOPE'|'SCOPED_OUT'|'SCOPE_CONFLICT',
'reason': 'string'
},
'scopeChanges': [
{
'integrationId': 'string',
'providerResourceId': 'string',
'baseCommitSha': 'string',
'headCommitSha': 'string',
'triggerRunId': 'string'
},
],
'cicdConfiguration': {
'enabled': True|False
},
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1)
},
],
'notFound': [
'string',
]
}
Response Structure
(dict) --
Output for the BatchGetPentestJobs operation.
pentestJobs (list) --
The list of pentest jobs that were found.
(dict) --
Represents a pentest job, which is an execution instance of a pentest. A pentest job progresses through preflight, static analysis, pentest, and finalizing steps.
pentestJobId (string) --
The unique identifier of the pentest job.
pentestId (string) --
The unique identifier of the pentest associated with the job.
title (string) --
The title of the pentest job.
overview (string) --
An overview of the pentest job results.
status (string) --
The current status of the pentest job.
endpoints (list) --
The list of endpoints being tested in the pentest job.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
actors (list) --
The list of actors used during the pentest job.
(dict) --
Represents an actor used during penetration testing. An actor defines a user or entity that interacts with the target application, including authentication credentials and target URIs.
identifier (string) --
The unique identifier for the actor.
uris (list) --
The list of URIs that the actor targets during testing.
(string) --
authentication (dict) --
The authentication configuration for the actor.
providerType (string) --
The type of authentication provider. Valid values include SECRETS_MANAGER, AWS_LAMBDA, AWS_IAM_ROLE, and AWS_INTERNAL.
value (string) --
The authentication value, such as a secret ARN, Lambda function ARN, or IAM role ARN, depending on the provider type.
description (string) --
A description of the actor.
enableEmailMfa (boolean) --
Whether email-based MFA is enabled for this actor.
mfaForwardingAddress (string) --
Server-generated email forwarding address for receiving MFA codes.
documents (list) --
The list of documents providing context for the pentest job.
(dict) --
Represents a document that provides context for security testing.
s3Location (string) --
The Amazon S3 location of the document.
artifactId (string) --
The unique identifier of the artifact associated with the document.
integratedDocument (dict) --
A reference to a document in an integrated third-party provider.
integrationId (string) --
The identifier of the integration that provides access to the document.
resourceId (string) --
The provider-specific resource identifier for the document.
sourceCode (list) --
The list of source code repositories analyzed during the pentest job.
(dict) --
Represents a source code repository used for security analysis during a pentest.
s3Location (string) --
The Amazon S3 location of the source code repository archive.
excludePaths (list) --
The list of paths excluded from the pentest job.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
allowedDomains (list) --
The list of domains allowed during the pentest job.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
excludeRiskTypes (list) --
The list of risk types excluded from the pentest job.
(string) --
Type of security risk.
steps (list) --
The list of steps in the pentest job execution.
(dict) --
Represents a step in the pentest job execution pipeline. Steps include preflight, static analysis, pentest, and finalizing.
name (string) --
The name of the step. Valid values include PREFLIGHT, STATIC_ANALYSIS, PENTEST, VALIDATION, and FINALIZING.
status (string) --
The current status of the step.
createdAt (datetime) --
The date and time the step was created, in UTC format.
updatedAt (datetime) --
The date and time the step was last updated, in UTC format.
executionContext (list) --
The execution context messages for the pentest job.
(dict) --
Contains contextual information about the execution of a pentest job, such as errors, warnings, or informational messages.
contextType (string) --
The type of context. Valid values include ERROR, CLIENT_ERROR, WARNING, and INFO.
context (string) --
The context message.
timestamp (datetime) --
The date and time the context was recorded, in UTC format.
serviceRole (string) --
The IAM service role used for the pentest job.
logConfig (dict) --
The CloudWatch Logs configuration for the pentest job.
logGroup (string) --
The name of the CloudWatch log group.
logStream (string) --
The name of the CloudWatch log stream.
vpcConfig (dict) --
The VPC configuration for the pentest job.
vpcArn (string) --
The Amazon Resource Name (ARN) or ID of the VPC.
securityGroupArns (list) --
The Amazon Resource Names (ARNs) or IDs of the security groups for the VPC configuration.
(string) --
ARN or ID of a security group.
subnetArns (list) --
The Amazon Resource Names (ARNs) or IDs of the subnets for the VPC configuration.
(string) --
ARN or ID of a subnet.
networkTrafficConfig (dict) --
The network traffic configuration for the pentest job.
rules (list) --
The list of network traffic rules that control which URLs are allowed or denied during testing.
(dict) --
A rule that controls network traffic during penetration testing by allowing or denying traffic to specific URL patterns.
effect (string) --
The effect of the rule. Valid values are ALLOW and DENY.
pattern (string) --
The URL pattern to match for the rule.
networkTrafficRuleType (string) --
The type of the network traffic rule. Currently, only URL is supported.
customHeaders (list) --
The list of custom HTTP headers to include in network traffic during testing.
(dict) --
A custom HTTP header to include in network traffic during penetration testing.
name (string) --
The name of the custom header.
value (string) --
The value of the custom header.
errorInformation (dict) --
Error information if the pentest job encountered an error.
code (string) --
The error code. Valid values include CLIENT_ERROR, INTERNAL_ERROR, and STOPPED_BY_USER.
message (string) --
A message describing the error.
integratedRepositories (list) --
The list of integrated repositories associated with the pentest job.
(dict) --
Represents a code repository that is integrated with the service through a third-party provider.
integrationId (string) --
The unique identifier of the integration that provides access to the repository.
providerResourceId (string) --
The provider-specific resource identifier for the repository.
branch (string) --
An optional override for the repository branch.
trustedCaCertificates (list) --
The trust anchors used to validate target endpoint TLS certificates during the pentest job.
(dict) --
A trust anchor used when validating a target endpoint's TLS certificate.
source (dict) --
The source that Security Agent reads the certificate from.
inlinePem (string) --
A PEM-encoded X.509 certificate supplied inline.
artifactId (string) --
The artifact ID of an uploaded certificate file.
s3Location (string) --
The Amazon S3 location URI of a customer-staged certificate.
codeRemediationStrategy (string) --
The code remediation strategy for the pentest job.
cleanUpStrategy (string) --
Strategy for cleaning up resources after pentest job completion.
disableManagedSkills (list) --
A list of managed skills disabled for this pentest job. Valid values include FINDING_PERSONALIZATION and LOGIN_OPTIMIZATION.
(string) --
Type of managed skill that can be enabled or disabled for a pentest.
maxTaskHours (float) --
The maximum number of billable task hours allowed for this pentest job. If the cumulative task hours reach this limit, the job is gracefully stopped.
jobType (string) --
The type of the pentest job. Valid values are FULL, REVALIDATION, and CICD.
selectedFindingIds (list) --
The list of finding identifiers selected for revalidation. Present only when jobType is REVALIDATION.
(string) --
reportDestination (dict) --
The destination for publishing scan reports to an integrated document provider.
integrationId (string) --
The integration identifier for the document provider.
containerId (string) --
The container identifier where the report will be published.
parentId (string) --
The parent document identifier under which the report will be created.
documentId (string) --
The existing document identifier to update instead of creating a new document.
reportUrl (string) --
The URL to view this pentest job's findings report in the console.
scopeResult (dict) --
The scoping outcome for this CI/CD pentest job. Present only for jobs of type CICD.
decision (string) --
The scoping decision for the job's code changes.
reason (string) --
A human-readable explanation of the scoping decision.
scopeChanges (list) --
The code changes that defined the scope of this CI/CD pentest job. Present only for jobs of type CICD.
(dict) --
A code change in a CI/CD pipeline run that defines what a CI/CD pentest job tests. Each scope change identifies an integrated repository and the commit range for the change.
integrationId (string) --
The identifier of the integration for the source-code provider that hosts the repository.
providerResourceId (string) --
The provider-specific identifier of the repository the change belongs to.
baseCommitSha (string) --
The commit SHA that the change is compared against. When omitted, the change is evaluated against the head commit alone.
headCommitSha (string) --
The commit SHA at the tip of the change to be tested.
triggerRunId (string) --
The identifier of the CI/CD pipeline run that triggered this pentest job.
cicdConfiguration (dict) --
The configuration that enables a pentest to run as part of a CI/CD pipeline, scoped to the code changes in each pipeline run.
enabled (boolean) --
Whether CI/CD pentesting is enabled for this pentest.
createdAt (datetime) --
The date and time the pentest job was created, in UTC format.
updatedAt (datetime) --
The date and time the pentest job was last updated, in UTC format.
notFound (list) --
The list of pentest job identifiers that were not found.
(string) --
{'pentests': {'cicdConfiguration': {'enabled': 'boolean'}}}
Retrieves information about one or more pentests in an agent space.
See also: AWS API Documentation
Request Syntax
client.batch_get_pentests(
pentestIds=[
'string',
],
agentSpaceId='string'
)
list
[REQUIRED]
The list of pentest identifiers to retrieve.
(string) --
string
[REQUIRED]
The unique identifier of the agent space that contains the pentests.
dict
Response Syntax
{
'pentests': [
{
'pentestId': 'string',
'agentSpaceId': 'string',
'title': 'string',
'assets': {
'endpoints': [
{
'uri': 'string'
},
],
'actors': [
{
'identifier': 'string',
'uris': [
'string',
],
'authentication': {
'providerType': 'SECRETS_MANAGER'|'AWS_LAMBDA'|'AWS_IAM_ROLE'|'AWS_INTERNAL',
'value': 'string'
},
'description': 'string',
'enableEmailMfa': True|False,
'mfaForwardingAddress': 'string'
},
],
'documents': [
{
's3Location': 'string',
'artifactId': 'string',
'integratedDocument': {
'integrationId': 'string',
'resourceId': 'string'
}
},
],
'sourceCode': [
{
's3Location': 'string'
},
],
'integratedRepositories': [
{
'integrationId': 'string',
'providerResourceId': 'string',
'branch': 'string'
},
],
'trustedCaCertificates': [
{
'source': {
'inlinePem': 'string',
'artifactId': 'string',
's3Location': 'string'
}
},
]
},
'excludeRiskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'serviceRole': 'string',
'logConfig': {
'logGroup': 'string',
'logStream': 'string'
},
'vpcConfig': {
'vpcArn': 'string',
'securityGroupArns': [
'string',
],
'subnetArns': [
'string',
]
},
'networkTrafficConfig': {
'rules': [
{
'effect': 'ALLOW'|'DENY',
'pattern': 'string',
'networkTrafficRuleType': 'URL'
},
],
'customHeaders': [
{
'name': 'string',
'value': 'string'
},
]
},
'codeRemediationStrategy': 'AUTOMATIC'|'DISABLED',
'cleanUpStrategy': 'BEST_EFFORT_DELETE'|'RETAIN_ALL',
'disableManagedSkills': [
'FINDING_PERSONALIZATION'|'LOGIN_OPTIMIZATION',
],
'maxTaskHours': 123.0,
'reportDestination': {
'integrationId': 'string',
'containerId': 'string',
'parentId': 'string',
'documentId': 'string'
},
'reportFilters': {
'riskLevels': [
'UNKNOWN'|'INFORMATIONAL'|'LOW'|'MEDIUM'|'HIGH'|'CRITICAL',
],
'confidenceLevels': [
'FALSE_POSITIVE'|'UNCONFIRMED'|'LOW'|'MEDIUM'|'HIGH',
],
'statuses': [
'ACTIVE'|'RESOLVED'|'ACCEPTED'|'FALSE_POSITIVE',
],
'riskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'findingTypes': [
'string',
],
'taskStatuses': [
'IN_PROGRESS'|'ABORTED'|'COMPLETED'|'INTERNAL_ERROR'|'FAILED',
],
'annotationNotes': True|False,
'complianceReport': True|False
},
'cicdConfiguration': {
'enabled': True|False
},
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1)
},
],
'notFound': [
'string',
]
}
Response Structure
(dict) --
Output for the BatchGetPentests operation.
pentests (list) --
The list of pentests that were found.
(dict) --
Represents a pentest configuration that defines the parameters for security testing, including target assets, risk type exclusions, and infrastructure settings.
pentestId (string) --
The unique identifier of the pentest.
agentSpaceId (string) --
The unique identifier of the agent space that contains the pentest.
title (string) --
The title of the pentest.
assets (dict) --
The assets included in the pentest.
endpoints (list) --
The list of endpoints to test during the pentest.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
actors (list) --
The list of actors used during penetration testing.
(dict) --
Represents an actor used during penetration testing. An actor defines a user or entity that interacts with the target application, including authentication credentials and target URIs.
identifier (string) --
The unique identifier for the actor.
uris (list) --
The list of URIs that the actor targets during testing.
(string) --
authentication (dict) --
The authentication configuration for the actor.
providerType (string) --
The type of authentication provider. Valid values include SECRETS_MANAGER, AWS_LAMBDA, AWS_IAM_ROLE, and AWS_INTERNAL.
value (string) --
The authentication value, such as a secret ARN, Lambda function ARN, or IAM role ARN, depending on the provider type.
description (string) --
A description of the actor.
enableEmailMfa (boolean) --
Whether email-based MFA is enabled for this actor.
mfaForwardingAddress (string) --
Server-generated email forwarding address for receiving MFA codes.
documents (list) --
The list of documents that provide context for the pentest.
(dict) --
Represents a document that provides context for security testing.
s3Location (string) --
The Amazon S3 location of the document.
artifactId (string) --
The unique identifier of the artifact associated with the document.
integratedDocument (dict) --
A reference to a document in an integrated third-party provider.
integrationId (string) --
The identifier of the integration that provides access to the document.
resourceId (string) --
The provider-specific resource identifier for the document.
sourceCode (list) --
The list of source code repositories to analyze during the pentest.
(dict) --
Represents a source code repository used for security analysis during a pentest.
s3Location (string) --
The Amazon S3 location of the source code repository archive.
integratedRepositories (list) --
The list of integrated repositories associated with the pentest.
(dict) --
Represents a code repository that is integrated with the service through a third-party provider.
integrationId (string) --
The unique identifier of the integration that provides access to the repository.
providerResourceId (string) --
The provider-specific resource identifier for the repository.
branch (string) --
An optional override for the repository branch.
trustedCaCertificates (list) --
The trust anchors used to validate target endpoint TLS certificates. Provide these for endpoints served by a private or internal certificate authority (CA), an intermediate CA, or a self-signed certificate.
(dict) --
A trust anchor used when validating a target endpoint's TLS certificate.
source (dict) --
The source that Security Agent reads the certificate from.
inlinePem (string) --
A PEM-encoded X.509 certificate supplied inline.
artifactId (string) --
The artifact ID of an uploaded certificate file.
s3Location (string) --
The Amazon S3 location URI of a customer-staged certificate.
excludeRiskTypes (list) --
The list of risk types excluded from the pentest.
(string) --
Type of security risk.
serviceRole (string) --
The IAM service role used for the pentest.
logConfig (dict) --
The CloudWatch Logs configuration for the pentest.
logGroup (string) --
The name of the CloudWatch log group.
logStream (string) --
The name of the CloudWatch log stream.
vpcConfig (dict) --
The VPC configuration for the pentest.
vpcArn (string) --
The Amazon Resource Name (ARN) or ID of the VPC.
securityGroupArns (list) --
The Amazon Resource Names (ARNs) or IDs of the security groups for the VPC configuration.
(string) --
ARN or ID of a security group.
subnetArns (list) --
The Amazon Resource Names (ARNs) or IDs of the subnets for the VPC configuration.
(string) --
ARN or ID of a subnet.
networkTrafficConfig (dict) --
The network traffic configuration for the pentest.
rules (list) --
The list of network traffic rules that control which URLs are allowed or denied during testing.
(dict) --
A rule that controls network traffic during penetration testing by allowing or denying traffic to specific URL patterns.
effect (string) --
The effect of the rule. Valid values are ALLOW and DENY.
pattern (string) --
The URL pattern to match for the rule.
networkTrafficRuleType (string) --
The type of the network traffic rule. Currently, only URL is supported.
customHeaders (list) --
The list of custom HTTP headers to include in network traffic during testing.
(dict) --
A custom HTTP header to include in network traffic during penetration testing.
name (string) --
The name of the custom header.
value (string) --
The value of the custom header.
codeRemediationStrategy (string) --
The code remediation strategy for the pentest.
cleanUpStrategy (string) --
Strategy for cleaning up resources after pentest job completion.
disableManagedSkills (list) --
A list of managed skills to disable for this pentest. Valid values include FINDING_PERSONALIZATION and LOGIN_OPTIMIZATION.
(string) --
Type of managed skill that can be enabled or disabled for a pentest.
maxTaskHours (float) --
The maximum number of billable task hours allowed for jobs started from this pentest. If a job reaches the configured limit, it is gracefully stopped. If not set, jobs run to completion with no budget cap.
reportDestination (dict) --
The destination for publishing scan reports to an integrated document provider.
integrationId (string) --
The integration identifier for the document provider.
containerId (string) --
The container identifier where the report will be published.
parentId (string) --
The parent document identifier under which the report will be created.
documentId (string) --
The existing document identifier to update instead of creating a new document.
reportFilters (dict) --
The report-generation filters applied when the report is exported.
riskLevels (list) --
The severity levels to include in the report.
(string) --
Risk severity level.
confidenceLevels (list) --
The confidence levels to include in the report.
(string) --
Finding confidence level.
statuses (list) --
The finding statuses to include in the report.
(string) --
Finding status.
riskTypes (list) --
The risk types to include in the report.
(string) --
Type of security risk.
findingTypes (list) --
The finding types to include in the report.
(string) --
A single report-filter value for one filter dimension.
taskStatuses (list) --
The task execution statuses to include in the report's task table.
(string) --
Execution status of a task.
annotationNotes (boolean) --
Whether to include reviewer annotation notes under each finding.
complianceReport (boolean) --
Whether to include the compliance-ready report additions.
cicdConfiguration (dict) --
The CI/CD pentesting configuration for this pentest. Present when the pentest is set up to run from a CI/CD pipeline.
enabled (boolean) --
Whether CI/CD pentesting is enabled for this pentest.
createdAt (datetime) --
The date and time the pentest was created, in UTC format.
updatedAt (datetime) --
The date and time the pentest was last updated, in UTC format.
notFound (list) --
The list of pentest identifiers that were not found.
(string) --
{'cicdConfiguration': {'enabled': 'boolean'}}
Creates a new pentest configuration in an agent space. A pentest defines the security test parameters, including target assets, risk type exclusions, and logging configuration.
See also: AWS API Documentation
Request Syntax
client.create_pentest(
title='string',
agentSpaceId='string',
assets={
'endpoints': [
{
'uri': 'string'
},
],
'actors': [
{
'identifier': 'string',
'uris': [
'string',
],
'authentication': {
'providerType': 'SECRETS_MANAGER'|'AWS_LAMBDA'|'AWS_IAM_ROLE'|'AWS_INTERNAL',
'value': 'string'
},
'description': 'string',
'enableEmailMfa': True|False,
'mfaForwardingAddress': 'string'
},
],
'documents': [
{
's3Location': 'string',
'artifactId': 'string',
'integratedDocument': {
'integrationId': 'string',
'resourceId': 'string'
}
},
],
'sourceCode': [
{
's3Location': 'string'
},
],
'integratedRepositories': [
{
'integrationId': 'string',
'providerResourceId': 'string',
'branch': 'string'
},
],
'trustedCaCertificates': [
{
'source': {
'inlinePem': 'string',
'artifactId': 'string',
's3Location': 'string'
}
},
]
},
excludeRiskTypes=[
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
serviceRole='string',
logConfig={
'logGroup': 'string',
'logStream': 'string'
},
vpcConfig={
'vpcArn': 'string',
'securityGroupArns': [
'string',
],
'subnetArns': [
'string',
]
},
networkTrafficConfig={
'rules': [
{
'effect': 'ALLOW'|'DENY',
'pattern': 'string',
'networkTrafficRuleType': 'URL'
},
],
'customHeaders': [
{
'name': 'string',
'value': 'string'
},
]
},
codeRemediationStrategy='AUTOMATIC'|'DISABLED',
disableManagedSkills=[
'FINDING_PERSONALIZATION'|'LOGIN_OPTIMIZATION',
],
maxTaskHours=123.0,
reportDestination={
'integrationId': 'string',
'containerId': 'string',
'parentId': 'string',
'documentId': 'string'
},
reportFilters={
'riskLevels': [
'UNKNOWN'|'INFORMATIONAL'|'LOW'|'MEDIUM'|'HIGH'|'CRITICAL',
],
'confidenceLevels': [
'FALSE_POSITIVE'|'UNCONFIRMED'|'LOW'|'MEDIUM'|'HIGH',
],
'statuses': [
'ACTIVE'|'RESOLVED'|'ACCEPTED'|'FALSE_POSITIVE',
],
'riskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'findingTypes': [
'string',
],
'taskStatuses': [
'IN_PROGRESS'|'ABORTED'|'COMPLETED'|'INTERNAL_ERROR'|'FAILED',
],
'annotationNotes': True|False,
'complianceReport': True|False
},
cicdConfiguration={
'enabled': True|False
}
)
string
[REQUIRED]
The title of the pentest.
string
[REQUIRED]
The unique identifier of the agent space to create the pentest in.
dict
The assets to include in the pentest, such as endpoints, actors, documents, and source code.
endpoints (list) --
The list of endpoints to test during the pentest.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
actors (list) --
The list of actors used during penetration testing.
(dict) --
Represents an actor used during penetration testing. An actor defines a user or entity that interacts with the target application, including authentication credentials and target URIs.
identifier (string) --
The unique identifier for the actor.
uris (list) --
The list of URIs that the actor targets during testing.
(string) --
authentication (dict) --
The authentication configuration for the actor.
providerType (string) --
The type of authentication provider. Valid values include SECRETS_MANAGER, AWS_LAMBDA, AWS_IAM_ROLE, and AWS_INTERNAL.
value (string) --
The authentication value, such as a secret ARN, Lambda function ARN, or IAM role ARN, depending on the provider type.
description (string) --
A description of the actor.
enableEmailMfa (boolean) --
Whether email-based MFA is enabled for this actor.
mfaForwardingAddress (string) --
Server-generated email forwarding address for receiving MFA codes.
documents (list) --
The list of documents that provide context for the pentest.
(dict) --
Represents a document that provides context for security testing.
s3Location (string) --
The Amazon S3 location of the document.
artifactId (string) --
The unique identifier of the artifact associated with the document.
integratedDocument (dict) --
A reference to a document in an integrated third-party provider.
integrationId (string) -- [REQUIRED]
The identifier of the integration that provides access to the document.
resourceId (string) -- [REQUIRED]
The provider-specific resource identifier for the document.
sourceCode (list) --
The list of source code repositories to analyze during the pentest.
(dict) --
Represents a source code repository used for security analysis during a pentest.
s3Location (string) --
The Amazon S3 location of the source code repository archive.
integratedRepositories (list) --
The list of integrated repositories associated with the pentest.
(dict) --
Represents a code repository that is integrated with the service through a third-party provider.
integrationId (string) -- [REQUIRED]
The unique identifier of the integration that provides access to the repository.
providerResourceId (string) -- [REQUIRED]
The provider-specific resource identifier for the repository.
branch (string) --
An optional override for the repository branch.
trustedCaCertificates (list) --
The trust anchors used to validate target endpoint TLS certificates. Provide these for endpoints served by a private or internal certificate authority (CA), an intermediate CA, or a self-signed certificate.
(dict) --
A trust anchor used when validating a target endpoint's TLS certificate.
source (dict) -- [REQUIRED]
The source that Security Agent reads the certificate from.
inlinePem (string) --
A PEM-encoded X.509 certificate supplied inline.
artifactId (string) --
The artifact ID of an uploaded certificate file.
s3Location (string) --
The Amazon S3 location URI of a customer-staged certificate.
list
The list of risk types to exclude from the pentest.
(string) --
Type of security risk.
string
The IAM service role to use for the pentest.
dict
The CloudWatch Logs configuration for the pentest.
logGroup (string) --
The name of the CloudWatch log group.
logStream (string) --
The name of the CloudWatch log stream.
dict
The VPC configuration for the pentest.
vpcArn (string) --
The Amazon Resource Name (ARN) or ID of the VPC.
securityGroupArns (list) --
The Amazon Resource Names (ARNs) or IDs of the security groups for the VPC configuration.
(string) --
ARN or ID of a security group.
subnetArns (list) --
The Amazon Resource Names (ARNs) or IDs of the subnets for the VPC configuration.
(string) --
ARN or ID of a subnet.
dict
The network traffic configuration for the pentest, including custom headers and traffic rules.
rules (list) --
The list of network traffic rules that control which URLs are allowed or denied during testing.
(dict) --
A rule that controls network traffic during penetration testing by allowing or denying traffic to specific URL patterns.
effect (string) --
The effect of the rule. Valid values are ALLOW and DENY.
pattern (string) --
The URL pattern to match for the rule.
networkTrafficRuleType (string) --
The type of the network traffic rule. Currently, only URL is supported.
customHeaders (list) --
The list of custom HTTP headers to include in network traffic during testing.
(dict) --
A custom HTTP header to include in network traffic during penetration testing.
name (string) --
The name of the custom header.
value (string) --
The value of the custom header.
string
The code remediation strategy for the pentest. Valid values are AUTOMATIC and DISABLED.
list
A list of managed skills to disable for this pentest. Valid values include FINDING_PERSONALIZATION and LOGIN_OPTIMIZATION.
(string) --
Type of managed skill that can be enabled or disabled for a pentest.
float
The maximum number of billable task hours allowed for jobs started from this pentest. Must be a positive number. If not set, jobs run to completion with no budget cap.
dict
The destination for publishing scan reports to an integrated document provider.
integrationId (string) -- [REQUIRED]
The integration identifier for the document provider.
containerId (string) -- [REQUIRED]
The container identifier where the report will be published.
parentId (string) --
The parent document identifier under which the report will be created.
documentId (string) --
The existing document identifier to update instead of creating a new document.
dict
The report-generation filters applied when the report is exported.
riskLevels (list) --
The severity levels to include in the report.
(string) --
Risk severity level.
confidenceLevels (list) --
The confidence levels to include in the report.
(string) --
Finding confidence level.
statuses (list) --
The finding statuses to include in the report.
(string) --
Finding status.
riskTypes (list) --
The risk types to include in the report.
(string) --
Type of security risk.
findingTypes (list) --
The finding types to include in the report.
(string) --
A single report-filter value for one filter dimension.
taskStatuses (list) --
The task execution statuses to include in the report's task table.
(string) --
Execution status of a task.
annotationNotes (boolean) --
Whether to include reviewer annotation notes under each finding.
complianceReport (boolean) --
Whether to include the compliance-ready report additions.
dict
The CI/CD pentesting configuration to apply to the pentest.
enabled (boolean) --
Whether CI/CD pentesting is enabled for this pentest.
dict
Response Syntax
{
'pentestId': 'string',
'title': 'string',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1),
'assets': {
'endpoints': [
{
'uri': 'string'
},
],
'actors': [
{
'identifier': 'string',
'uris': [
'string',
],
'authentication': {
'providerType': 'SECRETS_MANAGER'|'AWS_LAMBDA'|'AWS_IAM_ROLE'|'AWS_INTERNAL',
'value': 'string'
},
'description': 'string',
'enableEmailMfa': True|False,
'mfaForwardingAddress': 'string'
},
],
'documents': [
{
's3Location': 'string',
'artifactId': 'string',
'integratedDocument': {
'integrationId': 'string',
'resourceId': 'string'
}
},
],
'sourceCode': [
{
's3Location': 'string'
},
],
'integratedRepositories': [
{
'integrationId': 'string',
'providerResourceId': 'string',
'branch': 'string'
},
],
'trustedCaCertificates': [
{
'source': {
'inlinePem': 'string',
'artifactId': 'string',
's3Location': 'string'
}
},
]
},
'excludeRiskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'serviceRole': 'string',
'logConfig': {
'logGroup': 'string',
'logStream': 'string'
},
'agentSpaceId': 'string',
'reportDestination': {
'integrationId': 'string',
'containerId': 'string',
'parentId': 'string',
'documentId': 'string'
},
'reportFilters': {
'riskLevels': [
'UNKNOWN'|'INFORMATIONAL'|'LOW'|'MEDIUM'|'HIGH'|'CRITICAL',
],
'confidenceLevels': [
'FALSE_POSITIVE'|'UNCONFIRMED'|'LOW'|'MEDIUM'|'HIGH',
],
'statuses': [
'ACTIVE'|'RESOLVED'|'ACCEPTED'|'FALSE_POSITIVE',
],
'riskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'findingTypes': [
'string',
],
'taskStatuses': [
'IN_PROGRESS'|'ABORTED'|'COMPLETED'|'INTERNAL_ERROR'|'FAILED',
],
'annotationNotes': True|False,
'complianceReport': True|False
},
'cicdConfiguration': {
'enabled': True|False
}
}
Response Structure
(dict) --
Output for the CreatePentest operation.
pentestId (string) --
The unique identifier of the created pentest.
title (string) --
The title of the pentest.
createdAt (datetime) --
The date and time the pentest was created, in UTC format.
updatedAt (datetime) --
The date and time the pentest was last updated, in UTC format.
assets (dict) --
The assets included in the pentest.
endpoints (list) --
The list of endpoints to test during the pentest.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
actors (list) --
The list of actors used during penetration testing.
(dict) --
Represents an actor used during penetration testing. An actor defines a user or entity that interacts with the target application, including authentication credentials and target URIs.
identifier (string) --
The unique identifier for the actor.
uris (list) --
The list of URIs that the actor targets during testing.
(string) --
authentication (dict) --
The authentication configuration for the actor.
providerType (string) --
The type of authentication provider. Valid values include SECRETS_MANAGER, AWS_LAMBDA, AWS_IAM_ROLE, and AWS_INTERNAL.
value (string) --
The authentication value, such as a secret ARN, Lambda function ARN, or IAM role ARN, depending on the provider type.
description (string) --
A description of the actor.
enableEmailMfa (boolean) --
Whether email-based MFA is enabled for this actor.
mfaForwardingAddress (string) --
Server-generated email forwarding address for receiving MFA codes.
documents (list) --
The list of documents that provide context for the pentest.
(dict) --
Represents a document that provides context for security testing.
s3Location (string) --
The Amazon S3 location of the document.
artifactId (string) --
The unique identifier of the artifact associated with the document.
integratedDocument (dict) --
A reference to a document in an integrated third-party provider.
integrationId (string) --
The identifier of the integration that provides access to the document.
resourceId (string) --
The provider-specific resource identifier for the document.
sourceCode (list) --
The list of source code repositories to analyze during the pentest.
(dict) --
Represents a source code repository used for security analysis during a pentest.
s3Location (string) --
The Amazon S3 location of the source code repository archive.
integratedRepositories (list) --
The list of integrated repositories associated with the pentest.
(dict) --
Represents a code repository that is integrated with the service through a third-party provider.
integrationId (string) --
The unique identifier of the integration that provides access to the repository.
providerResourceId (string) --
The provider-specific resource identifier for the repository.
branch (string) --
An optional override for the repository branch.
trustedCaCertificates (list) --
The trust anchors used to validate target endpoint TLS certificates. Provide these for endpoints served by a private or internal certificate authority (CA), an intermediate CA, or a self-signed certificate.
(dict) --
A trust anchor used when validating a target endpoint's TLS certificate.
source (dict) --
The source that Security Agent reads the certificate from.
inlinePem (string) --
A PEM-encoded X.509 certificate supplied inline.
artifactId (string) --
The artifact ID of an uploaded certificate file.
s3Location (string) --
The Amazon S3 location URI of a customer-staged certificate.
excludeRiskTypes (list) --
The list of risk types excluded from the pentest.
(string) --
Type of security risk.
serviceRole (string) --
The IAM service role used for the pentest.
logConfig (dict) --
The CloudWatch Logs configuration for the pentest.
logGroup (string) --
The name of the CloudWatch log group.
logStream (string) --
The name of the CloudWatch log stream.
agentSpaceId (string) --
The unique identifier of the agent space that contains the pentest.
reportDestination (dict) --
The destination for publishing scan reports to an integrated document provider.
integrationId (string) --
The integration identifier for the document provider.
containerId (string) --
The container identifier where the report will be published.
parentId (string) --
The parent document identifier under which the report will be created.
documentId (string) --
The existing document identifier to update instead of creating a new document.
reportFilters (dict) --
The report-generation filters applied when the report is exported.
riskLevels (list) --
The severity levels to include in the report.
(string) --
Risk severity level.
confidenceLevels (list) --
The confidence levels to include in the report.
(string) --
Finding confidence level.
statuses (list) --
The finding statuses to include in the report.
(string) --
Finding status.
riskTypes (list) --
The risk types to include in the report.
(string) --
Type of security risk.
findingTypes (list) --
The finding types to include in the report.
(string) --
A single report-filter value for one filter dimension.
taskStatuses (list) --
The task execution statuses to include in the report's task table.
(string) --
Execution status of a task.
annotationNotes (boolean) --
Whether to include reviewer annotation notes under each finding.
complianceReport (boolean) --
Whether to include the compliance-ready report additions.
cicdConfiguration (dict) --
The CI/CD pentesting configuration applied to the pentest.
enabled (boolean) --
Whether CI/CD pentesting is enabled for this pentest.
{'jobType': 'FULL | REVALIDATION | CICD'}
Response {'pentestJobSummaries': {'jobType': 'FULL | REVALIDATION | CICD',
'reportUrl': 'string'}}
Returns a paginated list of pentest job summaries for the specified pentest configuration.
See also: AWS API Documentation
Request Syntax
client.list_pentest_jobs_for_pentest(
maxResults=123,
pentestId='string',
agentSpaceId='string',
nextToken='string',
jobType='FULL'|'REVALIDATION'|'CICD'
)
integer
The maximum number of results to return in a single call.
string
[REQUIRED]
The unique identifier of the pentest to list jobs for.
string
[REQUIRED]
The unique identifier of the agent space.
string
A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request. For subsequent calls, use the nextToken value returned from the previous request.
string
Filters the returned pentest jobs to only those of the specified job type.
dict
Response Syntax
{
'pentestJobSummaries': [
{
'pentestJobId': 'string',
'pentestId': 'string',
'title': 'string',
'status': 'IN_PROGRESS'|'STOPPING'|'STOPPED'|'FAILED'|'COMPLETED',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1),
'jobType': 'FULL'|'REVALIDATION'|'CICD',
'reportUrl': 'string'
},
],
'nextToken': 'string'
}
Response Structure
(dict) --
Output for the ListPentestJobsForPentest operation.
pentestJobSummaries (list) --
The list of pentest job summaries.
(dict) --
Contains summary information about a pentest job.
pentestJobId (string) --
The unique identifier of the pentest job.
pentestId (string) --
The unique identifier of the pentest associated with the job.
title (string) --
The title of the pentest job.
status (string) --
The current status of the pentest job.
createdAt (datetime) --
The date and time the pentest job was created, in UTC format.
updatedAt (datetime) --
The date and time the pentest job was last updated, in UTC format.
jobType (string) --
The type of the pentest job. Valid values are FULL, REVALIDATION, and CICD.
reportUrl (string) --
The URL to view this pentest job's findings report in the console.
nextToken (string) --
A token to use for paginating results that are returned in the response. Set the value of this parameter to null for the first request. For subsequent calls, use the nextToken value returned from the previous request.
{'jobType': {'CICD'},
'scopeChanges': [{'baseCommitSha': 'string',
'headCommitSha': 'string',
'integrationId': 'string',
'providerResourceId': 'string',
'triggerRunId': 'string'}]}
Starts a new pentest job for a pentest configuration. The job executes the security tests defined in the pentest.
See also: AWS API Documentation
Request Syntax
client.start_pentest_job(
agentSpaceId='string',
pentestId='string',
jobType='FULL'|'REVALIDATION'|'CICD',
selectedFindingIds=[
'string',
],
scopeChanges=[
{
'integrationId': 'string',
'providerResourceId': 'string',
'baseCommitSha': 'string',
'headCommitSha': 'string',
'triggerRunId': 'string'
},
]
)
string
[REQUIRED]
The unique identifier of the agent space.
string
[REQUIRED]
The unique identifier of the pentest to start a job for.
string
The type of pentest job to start. Valid values are FULL, REVALIDATION, and CICD. When set to REVALIDATION, the selectedFindingIds parameter is required. When set to CICD, the scopeChanges parameter defines the code changes to test.
list
The list of finding identifiers to revalidate. Required when jobType is REVALIDATION. Each finding must belong to the same agent space and pentest.
(string) --
list
The code changes that define the scope of a CI/CD pentest job. Provide this when starting a job with jobType CICD to test only the changes in the current pipeline run.
(dict) --
A code change in a CI/CD pipeline run that defines what a CI/CD pentest job tests. Each scope change identifies an integrated repository and the commit range for the change.
integrationId (string) -- [REQUIRED]
The identifier of the integration for the source-code provider that hosts the repository.
providerResourceId (string) -- [REQUIRED]
The provider-specific identifier of the repository the change belongs to.
baseCommitSha (string) --
The commit SHA that the change is compared against. When omitted, the change is evaluated against the head commit alone.
headCommitSha (string) -- [REQUIRED]
The commit SHA at the tip of the change to be tested.
triggerRunId (string) --
The identifier of the CI/CD pipeline run that triggered this pentest job.
dict
Response Syntax
{
'title': 'string',
'status': 'IN_PROGRESS'|'STOPPING'|'STOPPED'|'FAILED'|'COMPLETED',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1),
'pentestId': 'string',
'pentestJobId': 'string',
'agentSpaceId': 'string'
}
Response Structure
(dict) --
Output for the StartPentestJob operation.
title (string) --
The title of the pentest job.
status (string) --
The current status of the pentest job.
createdAt (datetime) --
The date and time the pentest job was created, in UTC format.
updatedAt (datetime) --
The date and time the pentest job was last updated, in UTC format.
pentestId (string) --
The unique identifier of the pentest.
pentestJobId (string) --
The unique identifier of the started pentest job.
agentSpaceId (string) --
The unique identifier of the agent space.
{'cicdConfiguration': {'enabled': 'boolean'}}
Updates an existing pentest configuration.
See also: AWS API Documentation
Request Syntax
client.update_pentest(
pentestId='string',
agentSpaceId='string',
title='string',
assets={
'endpoints': [
{
'uri': 'string'
},
],
'actors': [
{
'identifier': 'string',
'uris': [
'string',
],
'authentication': {
'providerType': 'SECRETS_MANAGER'|'AWS_LAMBDA'|'AWS_IAM_ROLE'|'AWS_INTERNAL',
'value': 'string'
},
'description': 'string',
'enableEmailMfa': True|False,
'mfaForwardingAddress': 'string'
},
],
'documents': [
{
's3Location': 'string',
'artifactId': 'string',
'integratedDocument': {
'integrationId': 'string',
'resourceId': 'string'
}
},
],
'sourceCode': [
{
's3Location': 'string'
},
],
'integratedRepositories': [
{
'integrationId': 'string',
'providerResourceId': 'string',
'branch': 'string'
},
],
'trustedCaCertificates': [
{
'source': {
'inlinePem': 'string',
'artifactId': 'string',
's3Location': 'string'
}
},
]
},
excludeRiskTypes=[
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
serviceRole='string',
logConfig={
'logGroup': 'string',
'logStream': 'string'
},
vpcConfig={
'vpcArn': 'string',
'securityGroupArns': [
'string',
],
'subnetArns': [
'string',
]
},
networkTrafficConfig={
'rules': [
{
'effect': 'ALLOW'|'DENY',
'pattern': 'string',
'networkTrafficRuleType': 'URL'
},
],
'customHeaders': [
{
'name': 'string',
'value': 'string'
},
]
},
codeRemediationStrategy='AUTOMATIC'|'DISABLED',
disableManagedSkills=[
'FINDING_PERSONALIZATION'|'LOGIN_OPTIMIZATION',
],
maxTaskHours=123.0,
reportDestination={
'integrationId': 'string',
'containerId': 'string',
'parentId': 'string',
'documentId': 'string'
},
reportFilters={
'riskLevels': [
'UNKNOWN'|'INFORMATIONAL'|'LOW'|'MEDIUM'|'HIGH'|'CRITICAL',
],
'confidenceLevels': [
'FALSE_POSITIVE'|'UNCONFIRMED'|'LOW'|'MEDIUM'|'HIGH',
],
'statuses': [
'ACTIVE'|'RESOLVED'|'ACCEPTED'|'FALSE_POSITIVE',
],
'riskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'findingTypes': [
'string',
],
'taskStatuses': [
'IN_PROGRESS'|'ABORTED'|'COMPLETED'|'INTERNAL_ERROR'|'FAILED',
],
'annotationNotes': True|False,
'complianceReport': True|False
},
cicdConfiguration={
'enabled': True|False
}
)
string
[REQUIRED]
The unique identifier of the pentest to update.
string
[REQUIRED]
The unique identifier of the agent space that contains the pentest.
string
The updated title of the pentest.
dict
The updated assets for the pentest.
endpoints (list) --
The list of endpoints to test during the pentest.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
actors (list) --
The list of actors used during penetration testing.
(dict) --
Represents an actor used during penetration testing. An actor defines a user or entity that interacts with the target application, including authentication credentials and target URIs.
identifier (string) --
The unique identifier for the actor.
uris (list) --
The list of URIs that the actor targets during testing.
(string) --
authentication (dict) --
The authentication configuration for the actor.
providerType (string) --
The type of authentication provider. Valid values include SECRETS_MANAGER, AWS_LAMBDA, AWS_IAM_ROLE, and AWS_INTERNAL.
value (string) --
The authentication value, such as a secret ARN, Lambda function ARN, or IAM role ARN, depending on the provider type.
description (string) --
A description of the actor.
enableEmailMfa (boolean) --
Whether email-based MFA is enabled for this actor.
mfaForwardingAddress (string) --
Server-generated email forwarding address for receiving MFA codes.
documents (list) --
The list of documents that provide context for the pentest.
(dict) --
Represents a document that provides context for security testing.
s3Location (string) --
The Amazon S3 location of the document.
artifactId (string) --
The unique identifier of the artifact associated with the document.
integratedDocument (dict) --
A reference to a document in an integrated third-party provider.
integrationId (string) -- [REQUIRED]
The identifier of the integration that provides access to the document.
resourceId (string) -- [REQUIRED]
The provider-specific resource identifier for the document.
sourceCode (list) --
The list of source code repositories to analyze during the pentest.
(dict) --
Represents a source code repository used for security analysis during a pentest.
s3Location (string) --
The Amazon S3 location of the source code repository archive.
integratedRepositories (list) --
The list of integrated repositories associated with the pentest.
(dict) --
Represents a code repository that is integrated with the service through a third-party provider.
integrationId (string) -- [REQUIRED]
The unique identifier of the integration that provides access to the repository.
providerResourceId (string) -- [REQUIRED]
The provider-specific resource identifier for the repository.
branch (string) --
An optional override for the repository branch.
trustedCaCertificates (list) --
The trust anchors used to validate target endpoint TLS certificates. Provide these for endpoints served by a private or internal certificate authority (CA), an intermediate CA, or a self-signed certificate.
(dict) --
A trust anchor used when validating a target endpoint's TLS certificate.
source (dict) -- [REQUIRED]
The source that Security Agent reads the certificate from.
inlinePem (string) --
A PEM-encoded X.509 certificate supplied inline.
artifactId (string) --
The artifact ID of an uploaded certificate file.
s3Location (string) --
The Amazon S3 location URI of a customer-staged certificate.
list
The updated list of risk types to exclude from the pentest.
(string) --
Type of security risk.
string
The updated IAM service role for the pentest.
dict
The updated CloudWatch Logs configuration for the pentest.
logGroup (string) --
The name of the CloudWatch log group.
logStream (string) --
The name of the CloudWatch log stream.
dict
The updated VPC configuration for the pentest.
vpcArn (string) --
The Amazon Resource Name (ARN) or ID of the VPC.
securityGroupArns (list) --
The Amazon Resource Names (ARNs) or IDs of the security groups for the VPC configuration.
(string) --
ARN or ID of a security group.
subnetArns (list) --
The Amazon Resource Names (ARNs) or IDs of the subnets for the VPC configuration.
(string) --
ARN or ID of a subnet.
dict
The updated network traffic configuration for the pentest.
rules (list) --
The list of network traffic rules that control which URLs are allowed or denied during testing.
(dict) --
A rule that controls network traffic during penetration testing by allowing or denying traffic to specific URL patterns.
effect (string) --
The effect of the rule. Valid values are ALLOW and DENY.
pattern (string) --
The URL pattern to match for the rule.
networkTrafficRuleType (string) --
The type of the network traffic rule. Currently, only URL is supported.
customHeaders (list) --
The list of custom HTTP headers to include in network traffic during testing.
(dict) --
A custom HTTP header to include in network traffic during penetration testing.
name (string) --
The name of the custom header.
value (string) --
The value of the custom header.
string
The updated code remediation strategy for the pentest.
list
The updated list of managed skills to disable for this pentest. Valid values include FINDING_PERSONALIZATION and LOGIN_OPTIMIZATION.
(string) --
Type of managed skill that can be enabled or disabled for a pentest.
float
The updated maximum number of billable task hours allowed for jobs started from this pentest.
dict
The destination for publishing scan reports to an integrated document provider.
integrationId (string) -- [REQUIRED]
The integration identifier for the document provider.
containerId (string) -- [REQUIRED]
The container identifier where the report will be published.
parentId (string) --
The parent document identifier under which the report will be created.
documentId (string) --
The existing document identifier to update instead of creating a new document.
dict
The report-generation filters applied when the report is exported.
riskLevels (list) --
The severity levels to include in the report.
(string) --
Risk severity level.
confidenceLevels (list) --
The confidence levels to include in the report.
(string) --
Finding confidence level.
statuses (list) --
The finding statuses to include in the report.
(string) --
Finding status.
riskTypes (list) --
The risk types to include in the report.
(string) --
Type of security risk.
findingTypes (list) --
The finding types to include in the report.
(string) --
A single report-filter value for one filter dimension.
taskStatuses (list) --
The task execution statuses to include in the report's task table.
(string) --
Execution status of a task.
annotationNotes (boolean) --
Whether to include reviewer annotation notes under each finding.
complianceReport (boolean) --
Whether to include the compliance-ready report additions.
dict
The updated CI/CD pentesting configuration to apply to the pentest.
enabled (boolean) --
Whether CI/CD pentesting is enabled for this pentest.
dict
Response Syntax
{
'pentestId': 'string',
'title': 'string',
'createdAt': datetime(2015, 1, 1),
'updatedAt': datetime(2015, 1, 1),
'assets': {
'endpoints': [
{
'uri': 'string'
},
],
'actors': [
{
'identifier': 'string',
'uris': [
'string',
],
'authentication': {
'providerType': 'SECRETS_MANAGER'|'AWS_LAMBDA'|'AWS_IAM_ROLE'|'AWS_INTERNAL',
'value': 'string'
},
'description': 'string',
'enableEmailMfa': True|False,
'mfaForwardingAddress': 'string'
},
],
'documents': [
{
's3Location': 'string',
'artifactId': 'string',
'integratedDocument': {
'integrationId': 'string',
'resourceId': 'string'
}
},
],
'sourceCode': [
{
's3Location': 'string'
},
],
'integratedRepositories': [
{
'integrationId': 'string',
'providerResourceId': 'string',
'branch': 'string'
},
],
'trustedCaCertificates': [
{
'source': {
'inlinePem': 'string',
'artifactId': 'string',
's3Location': 'string'
}
},
]
},
'excludeRiskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'serviceRole': 'string',
'logConfig': {
'logGroup': 'string',
'logStream': 'string'
},
'agentSpaceId': 'string',
'reportDestination': {
'integrationId': 'string',
'containerId': 'string',
'parentId': 'string',
'documentId': 'string'
},
'reportFilters': {
'riskLevels': [
'UNKNOWN'|'INFORMATIONAL'|'LOW'|'MEDIUM'|'HIGH'|'CRITICAL',
],
'confidenceLevels': [
'FALSE_POSITIVE'|'UNCONFIRMED'|'LOW'|'MEDIUM'|'HIGH',
],
'statuses': [
'ACTIVE'|'RESOLVED'|'ACCEPTED'|'FALSE_POSITIVE',
],
'riskTypes': [
'CROSS_SITE_SCRIPTING'|'DEFAULT_CREDENTIALS'|'INSECURE_DIRECT_OBJECT_REFERENCE'|'PRIVILEGE_ESCALATION'|'SERVER_SIDE_TEMPLATE_INJECTION'|'COMMAND_INJECTION'|'CODE_INJECTION'|'SQL_INJECTION'|'ARBITRARY_FILE_UPLOAD'|'INSECURE_DESERIALIZATION'|'LOCAL_FILE_INCLUSION'|'INFORMATION_DISCLOSURE'|'PATH_TRAVERSAL'|'SERVER_SIDE_REQUEST_FORGERY'|'JSON_WEB_TOKEN_VULNERABILITIES'|'XML_EXTERNAL_ENTITY'|'FILE_DELETION'|'OTHER'|'GRAPHQL_VULNERABILITIES'|'BUSINESS_LOGIC_VULNERABILITIES'|'CRYPTOGRAPHIC_VULNERABILITIES'|'DENIAL_OF_SERVICE'|'FILE_ACCESS'|'FILE_CREATION'|'DATABASE_MODIFICATION'|'DATABASE_ACCESS'|'OUTBOUND_SERVICE_REQUEST'|'UNKNOWN',
],
'findingTypes': [
'string',
],
'taskStatuses': [
'IN_PROGRESS'|'ABORTED'|'COMPLETED'|'INTERNAL_ERROR'|'FAILED',
],
'annotationNotes': True|False,
'complianceReport': True|False
},
'cicdConfiguration': {
'enabled': True|False
}
}
Response Structure
(dict) --
Output for the UpdatePentest operation.
pentestId (string) --
The unique identifier of the pentest.
title (string) --
The title of the pentest.
createdAt (datetime) --
The date and time the pentest was created, in UTC format.
updatedAt (datetime) --
The date and time the pentest was last updated, in UTC format.
assets (dict) --
The assets included in the pentest.
endpoints (list) --
The list of endpoints to test during the pentest.
(dict) --
Represents a target endpoint for penetration testing.
uri (string) --
The URI of the endpoint.
actors (list) --
The list of actors used during penetration testing.
(dict) --
Represents an actor used during penetration testing. An actor defines a user or entity that interacts with the target application, including authentication credentials and target URIs.
identifier (string) --
The unique identifier for the actor.
uris (list) --
The list of URIs that the actor targets during testing.
(string) --
authentication (dict) --
The authentication configuration for the actor.
providerType (string) --
The type of authentication provider. Valid values include SECRETS_MANAGER, AWS_LAMBDA, AWS_IAM_ROLE, and AWS_INTERNAL.
value (string) --
The authentication value, such as a secret ARN, Lambda function ARN, or IAM role ARN, depending on the provider type.
description (string) --
A description of the actor.
enableEmailMfa (boolean) --
Whether email-based MFA is enabled for this actor.
mfaForwardingAddress (string) --
Server-generated email forwarding address for receiving MFA codes.
documents (list) --
The list of documents that provide context for the pentest.
(dict) --
Represents a document that provides context for security testing.
s3Location (string) --
The Amazon S3 location of the document.
artifactId (string) --
The unique identifier of the artifact associated with the document.
integratedDocument (dict) --
A reference to a document in an integrated third-party provider.
integrationId (string) --
The identifier of the integration that provides access to the document.
resourceId (string) --
The provider-specific resource identifier for the document.
sourceCode (list) --
The list of source code repositories to analyze during the pentest.
(dict) --
Represents a source code repository used for security analysis during a pentest.
s3Location (string) --
The Amazon S3 location of the source code repository archive.
integratedRepositories (list) --
The list of integrated repositories associated with the pentest.
(dict) --
Represents a code repository that is integrated with the service through a third-party provider.
integrationId (string) --
The unique identifier of the integration that provides access to the repository.
providerResourceId (string) --
The provider-specific resource identifier for the repository.
branch (string) --
An optional override for the repository branch.
trustedCaCertificates (list) --
The trust anchors used to validate target endpoint TLS certificates. Provide these for endpoints served by a private or internal certificate authority (CA), an intermediate CA, or a self-signed certificate.
(dict) --
A trust anchor used when validating a target endpoint's TLS certificate.
source (dict) --
The source that Security Agent reads the certificate from.
inlinePem (string) --
A PEM-encoded X.509 certificate supplied inline.
artifactId (string) --
The artifact ID of an uploaded certificate file.
s3Location (string) --
The Amazon S3 location URI of a customer-staged certificate.
excludeRiskTypes (list) --
The list of risk types excluded from the pentest.
(string) --
Type of security risk.
serviceRole (string) --
The IAM service role used for the pentest.
logConfig (dict) --
The CloudWatch Logs configuration for the pentest.
logGroup (string) --
The name of the CloudWatch log group.
logStream (string) --
The name of the CloudWatch log stream.
agentSpaceId (string) --
The unique identifier of the agent space that contains the pentest.
reportDestination (dict) --
The destination for publishing scan reports to an integrated document provider.
integrationId (string) --
The integration identifier for the document provider.
containerId (string) --
The container identifier where the report will be published.
parentId (string) --
The parent document identifier under which the report will be created.
documentId (string) --
The existing document identifier to update instead of creating a new document.
reportFilters (dict) --
The report-generation filters applied when the report is exported.
riskLevels (list) --
The severity levels to include in the report.
(string) --
Risk severity level.
confidenceLevels (list) --
The confidence levels to include in the report.
(string) --
Finding confidence level.
statuses (list) --
The finding statuses to include in the report.
(string) --
Finding status.
riskTypes (list) --
The risk types to include in the report.
(string) --
Type of security risk.
findingTypes (list) --
The finding types to include in the report.
(string) --
A single report-filter value for one filter dimension.
taskStatuses (list) --
The task execution statuses to include in the report's task table.
(string) --
Execution status of a task.
annotationNotes (boolean) --
Whether to include reviewer annotation notes under each finding.
complianceReport (boolean) --
Whether to include the compliance-ready report additions.
cicdConfiguration (dict) --
The CI/CD pentesting configuration applied to the pentest.
enabled (boolean) --
Whether CI/CD pentesting is enabled for this pentest.