aws-sdk-securityagent 1.16.0 → 1.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dbcaf8dcdbb8741c7abbb334bcb971e8f686fca4eabc3f4753389c4608e7e391
4
- data.tar.gz: 8ee954386902a661bd173cafac4e6e011030e1db17a75c3e0326bd356d570625
3
+ metadata.gz: d5921d64f45ea422622f10d7df3c3328d92b4a338859a55594aaef480b825665
4
+ data.tar.gz: 16cd0b76519d1ec78b4f106498099b428d94415a609a68d9e42701ee598e859f
5
5
  SHA512:
6
- metadata.gz: 16b9bcb025ee64fa3b3ccf5c3e6b7e8e3b1bce39c330b8723f9624ec7c96f5470b00209d852f38752c75e95ae2afbee9081a264ed32f384fb96523df62365e51
7
- data.tar.gz: 1cd2e65a40bc59a29e91cee64991cb7b7cc4496da5df667c87d9f362504cba9a536864ce8ed9646284e8d7fdea558816b94c1a3f2e5084dbff7808b6f8796486
6
+ metadata.gz: 0d0b9ad3ceb3e8d3d0226a374be1b7de27da0e6973191f1e329e5a82becec35d8d1f5345957b4a9a6abc6e8527a0062b814c544a87fdf22ad941590852cec70a
7
+ data.tar.gz: af694a09301c5fd7d23dae1110a056c0a37f02952b8eabdc7a7f2e0ece0a0588cf87fdbe7f4010aa9ef9988ac2d160c02f5d54c45846a19c90310923c036b429
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.18.0 (2026-09-28)
5
+ ------------------
6
+
7
+ * Feature - Run automated penetration tests directly from your CI-CD pipeline to scan code changes before they ship, gating deployments on the findings
8
+
9
+ 1.17.0 (2026-09-25)
10
+ ------------------
11
+
12
+ * Feature - This release adds the ListActorMessages operation, which returns the multi-factor authentication messages received at an actor's server-generated email address
13
+
4
14
  1.16.0 (2026-09-24)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.16.0
1
+ 1.18.0
@@ -702,6 +702,7 @@ module Aws::SecurityAgent
702
702
  # resp.deleted[0].report_filters.task_statuses[0] #=> String, one of "IN_PROGRESS", "ABORTED", "COMPLETED", "INTERNAL_ERROR", "FAILED"
703
703
  # resp.deleted[0].report_filters.annotation_notes #=> Boolean
704
704
  # resp.deleted[0].report_filters.compliance_report #=> Boolean
705
+ # resp.deleted[0].cicd_configuration.enabled #=> Boolean
705
706
  # resp.deleted[0].created_at #=> Time
706
707
  # resp.deleted[0].updated_at #=> Time
707
708
  # resp.failed #=> Array
@@ -1330,13 +1331,23 @@ module Aws::SecurityAgent
1330
1331
  # resp.pentest_jobs[0].disable_managed_skills #=> Array
1331
1332
  # resp.pentest_jobs[0].disable_managed_skills[0] #=> String, one of "FINDING_PERSONALIZATION", "LOGIN_OPTIMIZATION"
1332
1333
  # resp.pentest_jobs[0].max_task_hours #=> Float
1333
- # resp.pentest_jobs[0].job_type #=> String, one of "FULL", "REVALIDATION"
1334
+ # resp.pentest_jobs[0].job_type #=> String, one of "FULL", "REVALIDATION", "CICD"
1334
1335
  # resp.pentest_jobs[0].selected_finding_ids #=> Array
1335
1336
  # resp.pentest_jobs[0].selected_finding_ids[0] #=> String
1336
1337
  # resp.pentest_jobs[0].report_destination.integration_id #=> String
1337
1338
  # resp.pentest_jobs[0].report_destination.container_id #=> String
1338
1339
  # resp.pentest_jobs[0].report_destination.parent_id #=> String
1339
1340
  # resp.pentest_jobs[0].report_destination.document_id #=> String
1341
+ # resp.pentest_jobs[0].report_url #=> String
1342
+ # resp.pentest_jobs[0].scope_result.decision #=> String, one of "IN_SCOPE", "SCOPED_OUT", "SCOPE_CONFLICT"
1343
+ # resp.pentest_jobs[0].scope_result.reason #=> String
1344
+ # resp.pentest_jobs[0].scope_changes #=> Array
1345
+ # resp.pentest_jobs[0].scope_changes[0].integration_id #=> String
1346
+ # resp.pentest_jobs[0].scope_changes[0].provider_resource_id #=> String
1347
+ # resp.pentest_jobs[0].scope_changes[0].base_commit_sha #=> String
1348
+ # resp.pentest_jobs[0].scope_changes[0].head_commit_sha #=> String
1349
+ # resp.pentest_jobs[0].scope_changes[0].trigger_run_id #=> String
1350
+ # resp.pentest_jobs[0].cicd_configuration.enabled #=> Boolean
1340
1351
  # resp.pentest_jobs[0].created_at #=> Time
1341
1352
  # resp.pentest_jobs[0].updated_at #=> Time
1342
1353
  # resp.not_found #=> Array
@@ -1443,6 +1454,7 @@ module Aws::SecurityAgent
1443
1454
  # resp.pentests[0].report_filters.task_statuses[0] #=> String, one of "IN_PROGRESS", "ABORTED", "COMPLETED", "INTERNAL_ERROR", "FAILED"
1444
1455
  # resp.pentests[0].report_filters.annotation_notes #=> Boolean
1445
1456
  # resp.pentests[0].report_filters.compliance_report #=> Boolean
1457
+ # resp.pentests[0].cicd_configuration.enabled #=> Boolean
1446
1458
  # resp.pentests[0].created_at #=> Time
1447
1459
  # resp.pentests[0].updated_at #=> Time
1448
1460
  # resp.not_found #=> Array
@@ -2385,6 +2397,9 @@ module Aws::SecurityAgent
2385
2397
  # @option params [Types::ReportFilters] :report_filters
2386
2398
  # The report-generation filters applied when the report is exported.
2387
2399
  #
2400
+ # @option params [Types::CiCdConfiguration] :cicd_configuration
2401
+ # The CI/CD pentesting configuration to apply to the pentest.
2402
+ #
2388
2403
  # @return [Types::CreatePentestOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2389
2404
  #
2390
2405
  # * {Types::CreatePentestOutput#pentest_id #pentest_id} => String
@@ -2398,6 +2413,7 @@ module Aws::SecurityAgent
2398
2413
  # * {Types::CreatePentestOutput#agent_space_id #agent_space_id} => String
2399
2414
  # * {Types::CreatePentestOutput#report_destination #report_destination} => Types::ReportDestination
2400
2415
  # * {Types::CreatePentestOutput#report_filters #report_filters} => Types::ReportFilters
2416
+ # * {Types::CreatePentestOutput#cicd_configuration #cicd_configuration} => Types::CiCdConfiguration
2401
2417
  #
2402
2418
  # @example Request syntax with placeholder values
2403
2419
  #
@@ -2500,6 +2516,9 @@ module Aws::SecurityAgent
2500
2516
  # annotation_notes: false,
2501
2517
  # compliance_report: false,
2502
2518
  # },
2519
+ # cicd_configuration: {
2520
+ # enabled: false,
2521
+ # },
2503
2522
  # })
2504
2523
  #
2505
2524
  # @example Response structure
@@ -2558,6 +2577,7 @@ module Aws::SecurityAgent
2558
2577
  # resp.report_filters.task_statuses[0] #=> String, one of "IN_PROGRESS", "ABORTED", "COMPLETED", "INTERNAL_ERROR", "FAILED"
2559
2578
  # resp.report_filters.annotation_notes #=> Boolean
2560
2579
  # resp.report_filters.compliance_report #=> Boolean
2580
+ # resp.cicd_configuration.enabled #=> Boolean
2561
2581
  #
2562
2582
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/CreatePentest AWS API Documentation
2563
2583
  #
@@ -3609,6 +3629,63 @@ module Aws::SecurityAgent
3609
3629
  req.send_request(options)
3610
3630
  end
3611
3631
 
3632
+ # Returns a paginated list of the email MFA messages received for an
3633
+ # actor at its server-generated email address, most recent first.
3634
+ #
3635
+ # @option params [Integer] :max_results
3636
+ # The maximum number of results to return in a single call.
3637
+ #
3638
+ # @option params [String] :next_token
3639
+ # A token to use for paginating results that are returned in the
3640
+ # response. Set the value of this parameter to null for the first
3641
+ # request. For subsequent calls, use the nextToken value returned from
3642
+ # the previous request.
3643
+ #
3644
+ # @option params [required, String] :agent_space_id
3645
+ # The unique identifier of the agent space that owns the pentest.
3646
+ #
3647
+ # @option params [required, String] :pentest_id
3648
+ # The unique identifier of the pentest that the actor belongs to.
3649
+ #
3650
+ # @option params [required, String] :actor_identifier
3651
+ # The identifier of the actor whose messages to list. The identifier is
3652
+ # case-insensitive.
3653
+ #
3654
+ # @return [Types::ListActorMessagesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3655
+ #
3656
+ # * {Types::ListActorMessagesOutput#messages #messages} => Array<Types::ActorMessage>
3657
+ # * {Types::ListActorMessagesOutput#next_token #next_token} => String
3658
+ #
3659
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3660
+ #
3661
+ # @example Request syntax with placeholder values
3662
+ #
3663
+ # resp = client.list_actor_messages({
3664
+ # max_results: 1,
3665
+ # next_token: "NextToken",
3666
+ # agent_space_id: "String", # required
3667
+ # pentest_id: "String", # required
3668
+ # actor_identifier: "String", # required
3669
+ # })
3670
+ #
3671
+ # @example Response structure
3672
+ #
3673
+ # resp.messages #=> Array
3674
+ # resp.messages[0].sender #=> String
3675
+ # resp.messages[0].subject #=> String
3676
+ # resp.messages[0].body #=> String
3677
+ # resp.messages[0].received_at #=> Time
3678
+ # resp.next_token #=> String
3679
+ #
3680
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/ListActorMessages AWS API Documentation
3681
+ #
3682
+ # @overload list_actor_messages(params = {})
3683
+ # @param [Hash] params ({})
3684
+ def list_actor_messages(params = {}, options = {})
3685
+ req = build_request(:list_actor_messages, params)
3686
+ req.send_request(options)
3687
+ end
3688
+
3612
3689
  # Returns a paginated list of agent space summaries in your account.
3613
3690
  #
3614
3691
  # @option params [String] :next_token
@@ -4340,6 +4417,10 @@ module Aws::SecurityAgent
4340
4417
  # request. For subsequent calls, use the nextToken value returned from
4341
4418
  # the previous request.
4342
4419
  #
4420
+ # @option params [String] :job_type
4421
+ # Filters the returned pentest jobs to only those of the specified job
4422
+ # type.
4423
+ #
4343
4424
  # @return [Types::ListPentestJobsForPentestOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4344
4425
  #
4345
4426
  # * {Types::ListPentestJobsForPentestOutput#pentest_job_summaries #pentest_job_summaries} => Array<Types::PentestJobSummary>
@@ -4354,6 +4435,7 @@ module Aws::SecurityAgent
4354
4435
  # pentest_id: "String", # required
4355
4436
  # agent_space_id: "String", # required
4356
4437
  # next_token: "NextToken",
4438
+ # job_type: "FULL", # accepts FULL, REVALIDATION, CICD
4357
4439
  # })
4358
4440
  #
4359
4441
  # @example Response structure
@@ -4365,6 +4447,8 @@ module Aws::SecurityAgent
4365
4447
  # resp.pentest_job_summaries[0].status #=> String, one of "IN_PROGRESS", "STOPPING", "STOPPED", "FAILED", "COMPLETED"
4366
4448
  # resp.pentest_job_summaries[0].created_at #=> Time
4367
4449
  # resp.pentest_job_summaries[0].updated_at #=> Time
4450
+ # resp.pentest_job_summaries[0].job_type #=> String, one of "FULL", "REVALIDATION", "CICD"
4451
+ # resp.pentest_job_summaries[0].report_url #=> String
4368
4452
  # resp.next_token #=> String
4369
4453
  #
4370
4454
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/ListPentestJobsForPentest AWS API Documentation
@@ -4956,15 +5040,21 @@ module Aws::SecurityAgent
4956
5040
  # The unique identifier of the pentest to start a job for.
4957
5041
  #
4958
5042
  # @option params [String] :job_type
4959
- # The type of pentest job to start. Valid values are FULL and
4960
- # REVALIDATION. When set to REVALIDATION, the selectedFindingIds
4961
- # parameter is required.
5043
+ # The type of pentest job to start. Valid values are FULL, REVALIDATION,
5044
+ # and CICD. When set to REVALIDATION, the selectedFindingIds parameter
5045
+ # is required. When set to CICD, the scopeChanges parameter defines the
5046
+ # code changes to test.
4962
5047
  #
4963
5048
  # @option params [Array<String>] :selected_finding_ids
4964
5049
  # The list of finding identifiers to revalidate. Required when jobType
4965
5050
  # is REVALIDATION. Each finding must belong to the same agent space and
4966
5051
  # pentest.
4967
5052
  #
5053
+ # @option params [Array<Types::ScopeChange>] :scope_changes
5054
+ # The code changes that define the scope of a CI/CD pentest job. Provide
5055
+ # this when starting a job with jobType CICD to test only the changes in
5056
+ # the current pipeline run.
5057
+ #
4968
5058
  # @return [Types::StartPentestJobOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4969
5059
  #
4970
5060
  # * {Types::StartPentestJobOutput#title #title} => String
@@ -4980,8 +5070,17 @@ module Aws::SecurityAgent
4980
5070
  # resp = client.start_pentest_job({
4981
5071
  # agent_space_id: "String", # required
4982
5072
  # pentest_id: "String", # required
4983
- # job_type: "FULL", # accepts FULL, REVALIDATION
5073
+ # job_type: "FULL", # accepts FULL, REVALIDATION, CICD
4984
5074
  # selected_finding_ids: ["String"],
5075
+ # scope_changes: [
5076
+ # {
5077
+ # integration_id: "String", # required
5078
+ # provider_resource_id: "String", # required
5079
+ # base_commit_sha: "String",
5080
+ # head_commit_sha: "String", # required
5081
+ # trigger_run_id: "String",
5082
+ # },
5083
+ # ],
4985
5084
  # })
4986
5085
  #
4987
5086
  # @example Response structure
@@ -5705,6 +5804,9 @@ module Aws::SecurityAgent
5705
5804
  # @option params [Types::ReportFilters] :report_filters
5706
5805
  # The report-generation filters applied when the report is exported.
5707
5806
  #
5807
+ # @option params [Types::CiCdConfiguration] :cicd_configuration
5808
+ # The updated CI/CD pentesting configuration to apply to the pentest.
5809
+ #
5708
5810
  # @return [Types::UpdatePentestOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5709
5811
  #
5710
5812
  # * {Types::UpdatePentestOutput#pentest_id #pentest_id} => String
@@ -5718,6 +5820,7 @@ module Aws::SecurityAgent
5718
5820
  # * {Types::UpdatePentestOutput#agent_space_id #agent_space_id} => String
5719
5821
  # * {Types::UpdatePentestOutput#report_destination #report_destination} => Types::ReportDestination
5720
5822
  # * {Types::UpdatePentestOutput#report_filters #report_filters} => Types::ReportFilters
5823
+ # * {Types::UpdatePentestOutput#cicd_configuration #cicd_configuration} => Types::CiCdConfiguration
5721
5824
  #
5722
5825
  # @example Request syntax with placeholder values
5723
5826
  #
@@ -5821,6 +5924,9 @@ module Aws::SecurityAgent
5821
5924
  # annotation_notes: false,
5822
5925
  # compliance_report: false,
5823
5926
  # },
5927
+ # cicd_configuration: {
5928
+ # enabled: false,
5929
+ # },
5824
5930
  # })
5825
5931
  #
5826
5932
  # @example Response structure
@@ -5879,6 +5985,7 @@ module Aws::SecurityAgent
5879
5985
  # resp.report_filters.task_statuses[0] #=> String, one of "IN_PROGRESS", "ABORTED", "COMPLETED", "INTERNAL_ERROR", "FAILED"
5880
5986
  # resp.report_filters.annotation_notes #=> Boolean
5881
5987
  # resp.report_filters.compliance_report #=> Boolean
5988
+ # resp.cicd_configuration.enabled #=> Boolean
5882
5989
  #
5883
5990
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/UpdatePentest AWS API Documentation
5884
5991
  #
@@ -6427,7 +6534,7 @@ module Aws::SecurityAgent
6427
6534
  tracer: tracer
6428
6535
  )
6429
6536
  context[:gem_name] = 'aws-sdk-securityagent'
6430
- context[:gem_version] = '1.16.0'
6537
+ context[:gem_version] = '1.18.0'
6431
6538
  Seahorse::Client::Request.new(handlers, context)
6432
6539
  end
6433
6540
 
@@ -20,6 +20,8 @@ module Aws::SecurityAgent
20
20
  AccessType = Shapes::StringShape.new(name: 'AccessType')
21
21
  Actor = Shapes::StructureShape.new(name: 'Actor')
22
22
  ActorList = Shapes::ListShape.new(name: 'ActorList')
23
+ ActorMessage = Shapes::StructureShape.new(name: 'ActorMessage')
24
+ ActorMessageList = Shapes::ListShape.new(name: 'ActorMessageList')
23
25
  AddArtifactInput = Shapes::StructureShape.new(name: 'AddArtifactInput')
24
26
  AddArtifactOutput = Shapes::StructureShape.new(name: 'AddArtifactOutput')
25
27
  AgentName = Shapes::StringShape.new(name: 'AgentName')
@@ -106,6 +108,7 @@ module Aws::SecurityAgent
106
108
  Category = Shapes::StructureShape.new(name: 'Category')
107
109
  CategoryList = Shapes::ListShape.new(name: 'CategoryList')
108
110
  CertificateChain = Shapes::StringShape.new(name: 'CertificateChain')
111
+ CiCdConfiguration = Shapes::StructureShape.new(name: 'CiCdConfiguration')
109
112
  CleanUpStrategy = Shapes::StringShape.new(name: 'CleanUpStrategy')
110
113
  CloudWatchLog = Shapes::StructureShape.new(name: 'CloudWatchLog')
111
114
  CodeLocation = Shapes::StructureShape.new(name: 'CodeLocation')
@@ -264,6 +267,8 @@ module Aws::SecurityAgent
264
267
  KmsKeyId = Shapes::StringShape.new(name: 'KmsKeyId')
265
268
  LambdaFunctionArn = Shapes::StringShape.new(name: 'LambdaFunctionArn')
266
269
  LambdaFunctionArns = Shapes::ListShape.new(name: 'LambdaFunctionArns')
270
+ ListActorMessagesInput = Shapes::StructureShape.new(name: 'ListActorMessagesInput')
271
+ ListActorMessagesOutput = Shapes::StructureShape.new(name: 'ListActorMessagesOutput')
267
272
  ListAgentSpacesInput = Shapes::StructureShape.new(name: 'ListAgentSpacesInput')
268
273
  ListAgentSpacesOutput = Shapes::StructureShape.new(name: 'ListAgentSpacesOutput')
269
274
  ListApplicationsRequest = Shapes::StructureShape.new(name: 'ListApplicationsRequest')
@@ -379,6 +384,10 @@ module Aws::SecurityAgent
379
384
  RoleArn = Shapes::StringShape.new(name: 'RoleArn')
380
385
  S3BucketArn = Shapes::StringShape.new(name: 'S3BucketArn')
381
386
  S3BucketArns = Shapes::ListShape.new(name: 'S3BucketArns')
387
+ ScopeChange = Shapes::StructureShape.new(name: 'ScopeChange')
388
+ ScopeChangeList = Shapes::ListShape.new(name: 'ScopeChangeList')
389
+ ScopeDecision = Shapes::StringShape.new(name: 'ScopeDecision')
390
+ ScopeResult = Shapes::StructureShape.new(name: 'ScopeResult')
382
391
  SecretArn = Shapes::StringShape.new(name: 'SecretArn')
383
392
  SecretArns = Shapes::ListShape.new(name: 'SecretArns')
384
393
  SecurityGroupArn = Shapes::StringShape.new(name: 'SecurityGroupArn')
@@ -401,6 +410,9 @@ module Aws::SecurityAgent
401
410
  SelfManagedInput = Shapes::StructureShape.new(name: 'SelfManagedInput')
402
411
  SensitiveEmail = Shapes::StringShape.new(name: 'SensitiveEmail')
403
412
  SensitiveEmailAddress = Shapes::StringShape.new(name: 'SensitiveEmailAddress')
413
+ SensitiveMessageBody = Shapes::StringShape.new(name: 'SensitiveMessageBody')
414
+ SensitiveMessageSender = Shapes::StringShape.new(name: 'SensitiveMessageSender')
415
+ SensitiveMessageSubject = Shapes::StringShape.new(name: 'SensitiveMessageSubject')
404
416
  ServiceManagedInput = Shapes::StructureShape.new(name: 'ServiceManagedInput')
405
417
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
406
418
  ServiceRole = Shapes::StringShape.new(name: 'ServiceRole')
@@ -548,6 +560,14 @@ module Aws::SecurityAgent
548
560
 
549
561
  ActorList.member = Shapes::ShapeRef.new(shape: Actor)
550
562
 
563
+ ActorMessage.add_member(:sender, Shapes::ShapeRef.new(shape: SensitiveMessageSender, location_name: "sender"))
564
+ ActorMessage.add_member(:subject, Shapes::ShapeRef.new(shape: SensitiveMessageSubject, location_name: "subject"))
565
+ ActorMessage.add_member(:body, Shapes::ShapeRef.new(shape: SensitiveMessageBody, location_name: "body"))
566
+ ActorMessage.add_member(:received_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "receivedAt"))
567
+ ActorMessage.struct_class = Types::ActorMessage
568
+
569
+ ActorMessageList.member = Shapes::ShapeRef.new(shape: ActorMessage)
570
+
551
571
  AddArtifactInput.add_member(:agent_space_id, Shapes::ShapeRef.new(shape: AgentSpaceId, required: true, location_name: "agentSpaceId"))
552
572
  AddArtifactInput.add_member(:artifact_content, Shapes::ShapeRef.new(shape: Blob, required: true, location_name: "artifactContent"))
553
573
  AddArtifactInput.add_member(:artifact_type, Shapes::ShapeRef.new(shape: ArtifactType, required: true, location_name: "artifactType"))
@@ -853,6 +873,9 @@ module Aws::SecurityAgent
853
873
 
854
874
  CategoryList.member = Shapes::ShapeRef.new(shape: Category)
855
875
 
876
+ CiCdConfiguration.add_member(:enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "enabled"))
877
+ CiCdConfiguration.struct_class = Types::CiCdConfiguration
878
+
856
879
  CloudWatchLog.add_member(:log_group, Shapes::ShapeRef.new(shape: String, location_name: "logGroup"))
857
880
  CloudWatchLog.add_member(:log_stream, Shapes::ShapeRef.new(shape: String, location_name: "logStream"))
858
881
  CloudWatchLog.struct_class = Types::CloudWatchLog
@@ -1092,6 +1115,7 @@ module Aws::SecurityAgent
1092
1115
  CreatePentestInput.add_member(:max_task_hours, Shapes::ShapeRef.new(shape: Double, location_name: "maxTaskHours"))
1093
1116
  CreatePentestInput.add_member(:report_destination, Shapes::ShapeRef.new(shape: ReportDestination, location_name: "reportDestination"))
1094
1117
  CreatePentestInput.add_member(:report_filters, Shapes::ShapeRef.new(shape: ReportFilters, location_name: "reportFilters"))
1118
+ CreatePentestInput.add_member(:cicd_configuration, Shapes::ShapeRef.new(shape: CiCdConfiguration, location_name: "cicdConfiguration"))
1095
1119
  CreatePentestInput.struct_class = Types::CreatePentestInput
1096
1120
 
1097
1121
  CreatePentestOutput.add_member(:pentest_id, Shapes::ShapeRef.new(shape: String, location_name: "pentestId"))
@@ -1105,6 +1129,7 @@ module Aws::SecurityAgent
1105
1129
  CreatePentestOutput.add_member(:agent_space_id, Shapes::ShapeRef.new(shape: String, location_name: "agentSpaceId"))
1106
1130
  CreatePentestOutput.add_member(:report_destination, Shapes::ShapeRef.new(shape: ReportDestination, location_name: "reportDestination"))
1107
1131
  CreatePentestOutput.add_member(:report_filters, Shapes::ShapeRef.new(shape: ReportFilters, location_name: "reportFilters"))
1132
+ CreatePentestOutput.add_member(:cicd_configuration, Shapes::ShapeRef.new(shape: CiCdConfiguration, location_name: "cicdConfiguration"))
1108
1133
  CreatePentestOutput.struct_class = Types::CreatePentestOutput
1109
1134
 
1110
1135
  CreatePrivateConnectionInput.add_member(:private_connection_name, Shapes::ShapeRef.new(shape: PrivateConnectionName, required: true, location_name: "privateConnectionName"))
@@ -1611,6 +1636,17 @@ module Aws::SecurityAgent
1611
1636
 
1612
1637
  LambdaFunctionArns.member = Shapes::ShapeRef.new(shape: LambdaFunctionArn)
1613
1638
 
1639
+ ListActorMessagesInput.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
1640
+ ListActorMessagesInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1641
+ ListActorMessagesInput.add_member(:agent_space_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "agentSpaceId"))
1642
+ ListActorMessagesInput.add_member(:pentest_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "pentestId"))
1643
+ ListActorMessagesInput.add_member(:actor_identifier, Shapes::ShapeRef.new(shape: String, required: true, location_name: "actorIdentifier"))
1644
+ ListActorMessagesInput.struct_class = Types::ListActorMessagesInput
1645
+
1646
+ ListActorMessagesOutput.add_member(:messages, Shapes::ShapeRef.new(shape: ActorMessageList, location_name: "messages"))
1647
+ ListActorMessagesOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1648
+ ListActorMessagesOutput.struct_class = Types::ListActorMessagesOutput
1649
+
1614
1650
  ListAgentSpacesInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1615
1651
  ListAgentSpacesInput.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
1616
1652
  ListAgentSpacesInput.struct_class = Types::ListAgentSpacesInput
@@ -1741,6 +1777,7 @@ module Aws::SecurityAgent
1741
1777
  ListPentestJobsForPentestInput.add_member(:pentest_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "pentestId"))
1742
1778
  ListPentestJobsForPentestInput.add_member(:agent_space_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "agentSpaceId"))
1743
1779
  ListPentestJobsForPentestInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1780
+ ListPentestJobsForPentestInput.add_member(:job_type, Shapes::ShapeRef.new(shape: JobType, location_name: "jobType"))
1744
1781
  ListPentestJobsForPentestInput.struct_class = Types::ListPentestJobsForPentestInput
1745
1782
 
1746
1783
  ListPentestJobsForPentestOutput.add_member(:pentest_job_summaries, Shapes::ShapeRef.new(shape: PentestJobSummaryList, location_name: "pentestJobSummaries"))
@@ -1897,6 +1934,7 @@ module Aws::SecurityAgent
1897
1934
  Pentest.add_member(:max_task_hours, Shapes::ShapeRef.new(shape: Double, location_name: "maxTaskHours"))
1898
1935
  Pentest.add_member(:report_destination, Shapes::ShapeRef.new(shape: ReportDestination, location_name: "reportDestination"))
1899
1936
  Pentest.add_member(:report_filters, Shapes::ShapeRef.new(shape: ReportFilters, location_name: "reportFilters"))
1937
+ Pentest.add_member(:cicd_configuration, Shapes::ShapeRef.new(shape: CiCdConfiguration, location_name: "cicdConfiguration"))
1900
1938
  Pentest.add_member(:created_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "createdAt"))
1901
1939
  Pentest.add_member(:updated_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "updatedAt"))
1902
1940
  Pentest.struct_class = Types::Pentest
@@ -1931,6 +1969,10 @@ module Aws::SecurityAgent
1931
1969
  PentestJob.add_member(:job_type, Shapes::ShapeRef.new(shape: JobType, location_name: "jobType"))
1932
1970
  PentestJob.add_member(:selected_finding_ids, Shapes::ShapeRef.new(shape: StringList, location_name: "selectedFindingIds"))
1933
1971
  PentestJob.add_member(:report_destination, Shapes::ShapeRef.new(shape: ReportDestination, location_name: "reportDestination"))
1972
+ PentestJob.add_member(:report_url, Shapes::ShapeRef.new(shape: String, location_name: "reportUrl"))
1973
+ PentestJob.add_member(:scope_result, Shapes::ShapeRef.new(shape: ScopeResult, location_name: "scopeResult"))
1974
+ PentestJob.add_member(:scope_changes, Shapes::ShapeRef.new(shape: ScopeChangeList, location_name: "scopeChanges"))
1975
+ PentestJob.add_member(:cicd_configuration, Shapes::ShapeRef.new(shape: CiCdConfiguration, location_name: "cicdConfiguration"))
1934
1976
  PentestJob.add_member(:created_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "createdAt"))
1935
1977
  PentestJob.add_member(:updated_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "updatedAt"))
1936
1978
  PentestJob.struct_class = Types::PentestJob
@@ -1945,6 +1987,8 @@ module Aws::SecurityAgent
1945
1987
  PentestJobSummary.add_member(:status, Shapes::ShapeRef.new(shape: JobStatus, location_name: "status"))
1946
1988
  PentestJobSummary.add_member(:created_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "createdAt"))
1947
1989
  PentestJobSummary.add_member(:updated_at, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, location_name: "updatedAt"))
1990
+ PentestJobSummary.add_member(:job_type, Shapes::ShapeRef.new(shape: JobType, location_name: "jobType"))
1991
+ PentestJobSummary.add_member(:report_url, Shapes::ShapeRef.new(shape: String, location_name: "reportUrl"))
1948
1992
  PentestJobSummary.struct_class = Types::PentestJobSummary
1949
1993
 
1950
1994
  PentestJobSummaryList.member = Shapes::ShapeRef.new(shape: PentestJobSummary)
@@ -2042,6 +2086,19 @@ module Aws::SecurityAgent
2042
2086
 
2043
2087
  S3BucketArns.member = Shapes::ShapeRef.new(shape: S3BucketArn)
2044
2088
 
2089
+ ScopeChange.add_member(:integration_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "integrationId"))
2090
+ ScopeChange.add_member(:provider_resource_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "providerResourceId"))
2091
+ ScopeChange.add_member(:base_commit_sha, Shapes::ShapeRef.new(shape: String, location_name: "baseCommitSha"))
2092
+ ScopeChange.add_member(:head_commit_sha, Shapes::ShapeRef.new(shape: String, required: true, location_name: "headCommitSha"))
2093
+ ScopeChange.add_member(:trigger_run_id, Shapes::ShapeRef.new(shape: String, location_name: "triggerRunId"))
2094
+ ScopeChange.struct_class = Types::ScopeChange
2095
+
2096
+ ScopeChangeList.member = Shapes::ShapeRef.new(shape: ScopeChange)
2097
+
2098
+ ScopeResult.add_member(:decision, Shapes::ShapeRef.new(shape: ScopeDecision, required: true, location_name: "decision"))
2099
+ ScopeResult.add_member(:reason, Shapes::ShapeRef.new(shape: String, required: true, location_name: "reason"))
2100
+ ScopeResult.struct_class = Types::ScopeResult
2101
+
2045
2102
  SecretArns.member = Shapes::ShapeRef.new(shape: SecretArn)
2046
2103
 
2047
2104
  SecurityGroupArns.member = Shapes::ShapeRef.new(shape: SecurityGroupArn)
@@ -2127,6 +2184,7 @@ module Aws::SecurityAgent
2127
2184
  StartPentestJobInput.add_member(:pentest_id, Shapes::ShapeRef.new(shape: String, required: true, location_name: "pentestId"))
2128
2185
  StartPentestJobInput.add_member(:job_type, Shapes::ShapeRef.new(shape: JobType, location_name: "jobType"))
2129
2186
  StartPentestJobInput.add_member(:selected_finding_ids, Shapes::ShapeRef.new(shape: StringList, location_name: "selectedFindingIds"))
2187
+ StartPentestJobInput.add_member(:scope_changes, Shapes::ShapeRef.new(shape: ScopeChangeList, location_name: "scopeChanges"))
2130
2188
  StartPentestJobInput.struct_class = Types::StartPentestJobInput
2131
2189
 
2132
2190
  StartPentestJobOutput.add_member(:title, Shapes::ShapeRef.new(shape: String, location_name: "title"))
@@ -2494,6 +2552,7 @@ module Aws::SecurityAgent
2494
2552
  UpdatePentestInput.add_member(:max_task_hours, Shapes::ShapeRef.new(shape: Double, location_name: "maxTaskHours"))
2495
2553
  UpdatePentestInput.add_member(:report_destination, Shapes::ShapeRef.new(shape: ReportDestination, location_name: "reportDestination"))
2496
2554
  UpdatePentestInput.add_member(:report_filters, Shapes::ShapeRef.new(shape: ReportFilters, location_name: "reportFilters"))
2555
+ UpdatePentestInput.add_member(:cicd_configuration, Shapes::ShapeRef.new(shape: CiCdConfiguration, location_name: "cicdConfiguration"))
2497
2556
  UpdatePentestInput.struct_class = Types::UpdatePentestInput
2498
2557
 
2499
2558
  UpdatePentestOutput.add_member(:pentest_id, Shapes::ShapeRef.new(shape: String, location_name: "pentestId"))
@@ -2507,6 +2566,7 @@ module Aws::SecurityAgent
2507
2566
  UpdatePentestOutput.add_member(:agent_space_id, Shapes::ShapeRef.new(shape: String, location_name: "agentSpaceId"))
2508
2567
  UpdatePentestOutput.add_member(:report_destination, Shapes::ShapeRef.new(shape: ReportDestination, location_name: "reportDestination"))
2509
2568
  UpdatePentestOutput.add_member(:report_filters, Shapes::ShapeRef.new(shape: ReportFilters, location_name: "reportFilters"))
2569
+ UpdatePentestOutput.add_member(:cicd_configuration, Shapes::ShapeRef.new(shape: CiCdConfiguration, location_name: "cicdConfiguration"))
2510
2570
  UpdatePentestOutput.struct_class = Types::UpdatePentestOutput
2511
2571
 
2512
2572
  UpdatePrivateConnectionCertificateInput.add_member(:private_connection_name, Shapes::ShapeRef.new(shape: PrivateConnectionName, required: true, location_name: "privateConnectionName"))
@@ -3191,6 +3251,20 @@ module Aws::SecurityAgent
3191
3251
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
3192
3252
  end)
3193
3253
 
3254
+ api.add_operation(:list_actor_messages, Seahorse::Model::Operation.new.tap do |o|
3255
+ o.name = "ListActorMessages"
3256
+ o.http_method = "POST"
3257
+ o.http_request_uri = "/ListActorMessages"
3258
+ o.input = Shapes::ShapeRef.new(shape: ListActorMessagesInput)
3259
+ o.output = Shapes::ShapeRef.new(shape: ListActorMessagesOutput)
3260
+ o[:pager] = Aws::Pager.new(
3261
+ limit_key: "max_results",
3262
+ tokens: {
3263
+ "next_token" => "next_token"
3264
+ }
3265
+ )
3266
+ end)
3267
+
3194
3268
  api.add_operation(:list_agent_spaces, Seahorse::Model::Operation.new.tap do |o|
3195
3269
  o.name = "ListAgentSpaces"
3196
3270
  o.http_method = "POST"
@@ -109,6 +109,36 @@ module Aws::SecurityAgent
109
109
  include Aws::Structure
110
110
  end
111
111
 
112
+ # A message received at an actor's server-generated email MFA address.
113
+ #
114
+ # @!attribute [rw] sender
115
+ # The address the message was sent from.
116
+ # @return [String]
117
+ #
118
+ # @!attribute [rw] subject
119
+ # The subject line of the message.
120
+ # @return [String]
121
+ #
122
+ # @!attribute [rw] body
123
+ # The plain-text body of the message, containing the MFA code or
124
+ # verification link.
125
+ # @return [String]
126
+ #
127
+ # @!attribute [rw] received_at
128
+ # The time the message was received.
129
+ # @return [Time]
130
+ #
131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/ActorMessage AWS API Documentation
132
+ #
133
+ class ActorMessage < Struct.new(
134
+ :sender,
135
+ :subject,
136
+ :body,
137
+ :received_at)
138
+ SENSITIVE = [:sender, :subject, :body]
139
+ include Aws::Structure
140
+ end
141
+
112
142
  # @!attribute [rw] agent_space_id
113
143
  # The unique identifier of the agent space to add the artifact to.
114
144
  # @return [String]
@@ -1479,6 +1509,21 @@ module Aws::SecurityAgent
1479
1509
  include Aws::Structure
1480
1510
  end
1481
1511
 
1512
+ # The configuration that enables a pentest to run as part of a CI/CD
1513
+ # pipeline, scoped to the code changes in each pipeline run.
1514
+ #
1515
+ # @!attribute [rw] enabled
1516
+ # Whether CI/CD pentesting is enabled for this pentest.
1517
+ # @return [Boolean]
1518
+ #
1519
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/CiCdConfiguration AWS API Documentation
1520
+ #
1521
+ class CiCdConfiguration < Struct.new(
1522
+ :enabled)
1523
+ SENSITIVE = []
1524
+ include Aws::Structure
1525
+ end
1526
+
1482
1527
  # The Amazon CloudWatch Logs configuration for pentest job logging.
1483
1528
  #
1484
1529
  # @!attribute [rw] log_group
@@ -2573,6 +2618,10 @@ module Aws::SecurityAgent
2573
2618
  # The report-generation filters applied when the report is exported.
2574
2619
  # @return [Types::ReportFilters]
2575
2620
  #
2621
+ # @!attribute [rw] cicd_configuration
2622
+ # The CI/CD pentesting configuration to apply to the pentest.
2623
+ # @return [Types::CiCdConfiguration]
2624
+ #
2576
2625
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/CreatePentestInput AWS API Documentation
2577
2626
  #
2578
2627
  class CreatePentestInput < Struct.new(
@@ -2588,7 +2637,8 @@ module Aws::SecurityAgent
2588
2637
  :disable_managed_skills,
2589
2638
  :max_task_hours,
2590
2639
  :report_destination,
2591
- :report_filters)
2640
+ :report_filters,
2641
+ :cicd_configuration)
2592
2642
  SENSITIVE = []
2593
2643
  include Aws::Structure
2594
2644
  end
@@ -2640,6 +2690,10 @@ module Aws::SecurityAgent
2640
2690
  # The report-generation filters applied when the report is exported.
2641
2691
  # @return [Types::ReportFilters]
2642
2692
  #
2693
+ # @!attribute [rw] cicd_configuration
2694
+ # The CI/CD pentesting configuration applied to the pentest.
2695
+ # @return [Types::CiCdConfiguration]
2696
+ #
2643
2697
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/CreatePentestOutput AWS API Documentation
2644
2698
  #
2645
2699
  class CreatePentestOutput < Struct.new(
@@ -2653,7 +2707,8 @@ module Aws::SecurityAgent
2653
2707
  :log_config,
2654
2708
  :agent_space_id,
2655
2709
  :report_destination,
2656
- :report_filters)
2710
+ :report_filters,
2711
+ :cicd_configuration)
2657
2712
  SENSITIVE = []
2658
2713
  include Aws::Structure
2659
2714
  end
@@ -4875,6 +4930,62 @@ module Aws::SecurityAgent
4875
4930
  include Aws::Structure
4876
4931
  end
4877
4932
 
4933
+ # @!attribute [rw] max_results
4934
+ # The maximum number of results to return in a single call.
4935
+ # @return [Integer]
4936
+ #
4937
+ # @!attribute [rw] next_token
4938
+ # A token to use for paginating results that are returned in the
4939
+ # response. Set the value of this parameter to null for the first
4940
+ # request. For subsequent calls, use the nextToken value returned from
4941
+ # the previous request.
4942
+ # @return [String]
4943
+ #
4944
+ # @!attribute [rw] agent_space_id
4945
+ # The unique identifier of the agent space that owns the pentest.
4946
+ # @return [String]
4947
+ #
4948
+ # @!attribute [rw] pentest_id
4949
+ # The unique identifier of the pentest that the actor belongs to.
4950
+ # @return [String]
4951
+ #
4952
+ # @!attribute [rw] actor_identifier
4953
+ # The identifier of the actor whose messages to list. The identifier
4954
+ # is case-insensitive.
4955
+ # @return [String]
4956
+ #
4957
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/ListActorMessagesInput AWS API Documentation
4958
+ #
4959
+ class ListActorMessagesInput < Struct.new(
4960
+ :max_results,
4961
+ :next_token,
4962
+ :agent_space_id,
4963
+ :pentest_id,
4964
+ :actor_identifier)
4965
+ SENSITIVE = []
4966
+ include Aws::Structure
4967
+ end
4968
+
4969
+ # @!attribute [rw] messages
4970
+ # The list of messages received for the actor, most recent first.
4971
+ # @return [Array<Types::ActorMessage>]
4972
+ #
4973
+ # @!attribute [rw] next_token
4974
+ # A token to use for paginating results that are returned in the
4975
+ # response. Set the value of this parameter to null for the first
4976
+ # request. For subsequent calls, use the nextToken value returned from
4977
+ # the previous request.
4978
+ # @return [String]
4979
+ #
4980
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/ListActorMessagesOutput AWS API Documentation
4981
+ #
4982
+ class ListActorMessagesOutput < Struct.new(
4983
+ :messages,
4984
+ :next_token)
4985
+ SENSITIVE = []
4986
+ include Aws::Structure
4987
+ end
4988
+
4878
4989
  # Input for listing agent spaces.
4879
4990
  #
4880
4991
  # @!attribute [rw] next_token
@@ -5563,13 +5674,19 @@ module Aws::SecurityAgent
5563
5674
  # the previous request.
5564
5675
  # @return [String]
5565
5676
  #
5677
+ # @!attribute [rw] job_type
5678
+ # Filters the returned pentest jobs to only those of the specified job
5679
+ # type.
5680
+ # @return [String]
5681
+ #
5566
5682
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/ListPentestJobsForPentestInput AWS API Documentation
5567
5683
  #
5568
5684
  class ListPentestJobsForPentestInput < Struct.new(
5569
5685
  :max_results,
5570
5686
  :pentest_id,
5571
5687
  :agent_space_id,
5572
- :next_token)
5688
+ :next_token,
5689
+ :job_type)
5573
5690
  SENSITIVE = []
5574
5691
  include Aws::Structure
5575
5692
  end
@@ -6293,6 +6410,11 @@ module Aws::SecurityAgent
6293
6410
  # The report-generation filters applied when the report is exported.
6294
6411
  # @return [Types::ReportFilters]
6295
6412
  #
6413
+ # @!attribute [rw] cicd_configuration
6414
+ # The CI/CD pentesting configuration for this pentest. Present when
6415
+ # the pentest is set up to run from a CI/CD pipeline.
6416
+ # @return [Types::CiCdConfiguration]
6417
+ #
6296
6418
  # @!attribute [rw] created_at
6297
6419
  # The date and time the pentest was created, in UTC format.
6298
6420
  # @return [Time]
@@ -6319,6 +6441,7 @@ module Aws::SecurityAgent
6319
6441
  :max_task_hours,
6320
6442
  :report_destination,
6321
6443
  :report_filters,
6444
+ :cicd_configuration,
6322
6445
  :created_at,
6323
6446
  :updated_at)
6324
6447
  SENSITIVE = []
@@ -6435,7 +6558,8 @@ module Aws::SecurityAgent
6435
6558
  # @return [Float]
6436
6559
  #
6437
6560
  # @!attribute [rw] job_type
6438
- # The type of the pentest job. Valid values are FULL and REVALIDATION.
6561
+ # The type of the pentest job. Valid values are FULL, REVALIDATION,
6562
+ # and CICD.
6439
6563
  # @return [String]
6440
6564
  #
6441
6565
  # @!attribute [rw] selected_finding_ids
@@ -6448,6 +6572,25 @@ module Aws::SecurityAgent
6448
6572
  # document provider.
6449
6573
  # @return [Types::ReportDestination]
6450
6574
  #
6575
+ # @!attribute [rw] report_url
6576
+ # The URL to view this pentest job's findings report in the console.
6577
+ # @return [String]
6578
+ #
6579
+ # @!attribute [rw] scope_result
6580
+ # The scoping outcome for this CI/CD pentest job. Present only for
6581
+ # jobs of type CICD.
6582
+ # @return [Types::ScopeResult]
6583
+ #
6584
+ # @!attribute [rw] scope_changes
6585
+ # The code changes that defined the scope of this CI/CD pentest job.
6586
+ # Present only for jobs of type CICD.
6587
+ # @return [Array<Types::ScopeChange>]
6588
+ #
6589
+ # @!attribute [rw] cicd_configuration
6590
+ # The configuration that enables a pentest to run as part of a CI/CD
6591
+ # pipeline, scoped to the code changes in each pipeline run.
6592
+ # @return [Types::CiCdConfiguration]
6593
+ #
6451
6594
  # @!attribute [rw] created_at
6452
6595
  # The date and time the pentest job was created, in UTC format.
6453
6596
  # @return [Time]
@@ -6487,6 +6630,10 @@ module Aws::SecurityAgent
6487
6630
  :job_type,
6488
6631
  :selected_finding_ids,
6489
6632
  :report_destination,
6633
+ :report_url,
6634
+ :scope_result,
6635
+ :scope_changes,
6636
+ :cicd_configuration,
6490
6637
  :created_at,
6491
6638
  :updated_at)
6492
6639
  SENSITIVE = [:trusted_ca_certificates]
@@ -6519,6 +6666,15 @@ module Aws::SecurityAgent
6519
6666
  # The date and time the pentest job was last updated, in UTC format.
6520
6667
  # @return [Time]
6521
6668
  #
6669
+ # @!attribute [rw] job_type
6670
+ # The type of the pentest job. Valid values are FULL, REVALIDATION,
6671
+ # and CICD.
6672
+ # @return [String]
6673
+ #
6674
+ # @!attribute [rw] report_url
6675
+ # The URL to view this pentest job's findings report in the console.
6676
+ # @return [String]
6677
+ #
6522
6678
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/PentestJobSummary AWS API Documentation
6523
6679
  #
6524
6680
  class PentestJobSummary < Struct.new(
@@ -6527,7 +6683,9 @@ module Aws::SecurityAgent
6527
6683
  :title,
6528
6684
  :status,
6529
6685
  :created_at,
6530
- :updated_at)
6686
+ :updated_at,
6687
+ :job_type,
6688
+ :report_url)
6531
6689
  SENSITIVE = []
6532
6690
  include Aws::Structure
6533
6691
  end
@@ -6844,6 +7002,66 @@ module Aws::SecurityAgent
6844
7002
  include Aws::Structure
6845
7003
  end
6846
7004
 
7005
+ # A code change in a CI/CD pipeline run that defines what a CI/CD
7006
+ # pentest job tests. Each scope change identifies an integrated
7007
+ # repository and the commit range for the change.
7008
+ #
7009
+ # @!attribute [rw] integration_id
7010
+ # The identifier of the integration for the source-code provider that
7011
+ # hosts the repository.
7012
+ # @return [String]
7013
+ #
7014
+ # @!attribute [rw] provider_resource_id
7015
+ # The provider-specific identifier of the repository the change
7016
+ # belongs to.
7017
+ # @return [String]
7018
+ #
7019
+ # @!attribute [rw] base_commit_sha
7020
+ # The commit SHA that the change is compared against. When omitted,
7021
+ # the change is evaluated against the head commit alone.
7022
+ # @return [String]
7023
+ #
7024
+ # @!attribute [rw] head_commit_sha
7025
+ # The commit SHA at the tip of the change to be tested.
7026
+ # @return [String]
7027
+ #
7028
+ # @!attribute [rw] trigger_run_id
7029
+ # The identifier of the CI/CD pipeline run that triggered this pentest
7030
+ # job.
7031
+ # @return [String]
7032
+ #
7033
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/ScopeChange AWS API Documentation
7034
+ #
7035
+ class ScopeChange < Struct.new(
7036
+ :integration_id,
7037
+ :provider_resource_id,
7038
+ :base_commit_sha,
7039
+ :head_commit_sha,
7040
+ :trigger_run_id)
7041
+ SENSITIVE = []
7042
+ include Aws::Structure
7043
+ end
7044
+
7045
+ # The outcome of scoping a CI/CD pentest job's code changes, including
7046
+ # the decision and the reason for it.
7047
+ #
7048
+ # @!attribute [rw] decision
7049
+ # The scoping decision for the job's code changes.
7050
+ # @return [String]
7051
+ #
7052
+ # @!attribute [rw] reason
7053
+ # A human-readable explanation of the scoping decision.
7054
+ # @return [String]
7055
+ #
7056
+ # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/ScopeResult AWS API Documentation
7057
+ #
7058
+ class ScopeResult < Struct.new(
7059
+ :decision,
7060
+ :reason)
7061
+ SENSITIVE = []
7062
+ include Aws::Structure
7063
+ end
7064
+
6847
7065
  # A document used as source material for importing security
6848
7066
  # requirements.
6849
7067
  #
@@ -7181,9 +7399,10 @@ module Aws::SecurityAgent
7181
7399
  # @return [String]
7182
7400
  #
7183
7401
  # @!attribute [rw] job_type
7184
- # The type of pentest job to start. Valid values are FULL and
7185
- # REVALIDATION. When set to REVALIDATION, the selectedFindingIds
7186
- # parameter is required.
7402
+ # The type of pentest job to start. Valid values are FULL,
7403
+ # REVALIDATION, and CICD. When set to REVALIDATION, the
7404
+ # selectedFindingIds parameter is required. When set to CICD, the
7405
+ # scopeChanges parameter defines the code changes to test.
7187
7406
  # @return [String]
7188
7407
  #
7189
7408
  # @!attribute [rw] selected_finding_ids
@@ -7192,13 +7411,20 @@ module Aws::SecurityAgent
7192
7411
  # and pentest.
7193
7412
  # @return [Array<String>]
7194
7413
  #
7414
+ # @!attribute [rw] scope_changes
7415
+ # The code changes that define the scope of a CI/CD pentest job.
7416
+ # Provide this when starting a job with jobType CICD to test only the
7417
+ # changes in the current pipeline run.
7418
+ # @return [Array<Types::ScopeChange>]
7419
+ #
7195
7420
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/StartPentestJobInput AWS API Documentation
7196
7421
  #
7197
7422
  class StartPentestJobInput < Struct.new(
7198
7423
  :agent_space_id,
7199
7424
  :pentest_id,
7200
7425
  :job_type,
7201
- :selected_finding_ids)
7426
+ :selected_finding_ids,
7427
+ :scope_changes)
7202
7428
  SENSITIVE = []
7203
7429
  include Aws::Structure
7204
7430
  end
@@ -8724,6 +8950,10 @@ module Aws::SecurityAgent
8724
8950
  # The report-generation filters applied when the report is exported.
8725
8951
  # @return [Types::ReportFilters]
8726
8952
  #
8953
+ # @!attribute [rw] cicd_configuration
8954
+ # The updated CI/CD pentesting configuration to apply to the pentest.
8955
+ # @return [Types::CiCdConfiguration]
8956
+ #
8727
8957
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/UpdatePentestInput AWS API Documentation
8728
8958
  #
8729
8959
  class UpdatePentestInput < Struct.new(
@@ -8740,7 +8970,8 @@ module Aws::SecurityAgent
8740
8970
  :disable_managed_skills,
8741
8971
  :max_task_hours,
8742
8972
  :report_destination,
8743
- :report_filters)
8973
+ :report_filters,
8974
+ :cicd_configuration)
8744
8975
  SENSITIVE = []
8745
8976
  include Aws::Structure
8746
8977
  end
@@ -8792,6 +9023,10 @@ module Aws::SecurityAgent
8792
9023
  # The report-generation filters applied when the report is exported.
8793
9024
  # @return [Types::ReportFilters]
8794
9025
  #
9026
+ # @!attribute [rw] cicd_configuration
9027
+ # The CI/CD pentesting configuration applied to the pentest.
9028
+ # @return [Types::CiCdConfiguration]
9029
+ #
8795
9030
  # @see http://docs.aws.amazon.com/goto/WebAPI/securityagent-2025-09-06/UpdatePentestOutput AWS API Documentation
8796
9031
  #
8797
9032
  class UpdatePentestOutput < Struct.new(
@@ -8805,7 +9040,8 @@ module Aws::SecurityAgent
8805
9040
  :log_config,
8806
9041
  :agent_space_id,
8807
9042
  :report_destination,
8808
- :report_filters)
9043
+ :report_filters,
9044
+ :cicd_configuration)
8809
9045
  SENSITIVE = []
8810
9046
  include Aws::Structure
8811
9047
  end
@@ -55,7 +55,7 @@ module Aws::SecurityAgent
55
55
  autoload :EndpointProvider, 'aws-sdk-securityagent/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-securityagent/endpoints'
57
57
 
58
- GEM_VERSION = '1.16.0'
58
+ GEM_VERSION = '1.18.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -506,6 +506,7 @@ module Aws
506
506
  def agent_space_id: () -> ::String
507
507
  def report_destination: () -> Types::ReportDestination
508
508
  def report_filters: () -> Types::ReportFilters
509
+ def cicd_configuration: () -> Types::CiCdConfiguration
509
510
  end
510
511
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SecurityAgent/Client.html#create_pentest-instance_method
511
512
  def create_pentest: (
@@ -533,7 +534,10 @@ module Aws
533
534
  parent_id: ::String?,
534
535
  document_id: ::String?
535
536
  },
536
- ?report_filters: Params::report_filters
537
+ ?report_filters: Params::report_filters,
538
+ ?cicd_configuration: {
539
+ enabled: bool?
540
+ }
537
541
  ) -> _CreatePentestResponseSuccess
538
542
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreatePentestResponseSuccess
539
543
 
@@ -903,6 +907,21 @@ module Aws
903
907
  ) -> _InitiateProviderRegistrationResponseSuccess
904
908
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _InitiateProviderRegistrationResponseSuccess
905
909
 
910
+ interface _ListActorMessagesResponseSuccess
911
+ include ::Seahorse::Client::_ResponseSuccess[Types::ListActorMessagesOutput]
912
+ def messages: () -> ::Array[Types::ActorMessage]
913
+ def next_token: () -> ::String
914
+ end
915
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SecurityAgent/Client.html#list_actor_messages-instance_method
916
+ def list_actor_messages: (
917
+ ?max_results: ::Integer,
918
+ ?next_token: ::String,
919
+ agent_space_id: ::String,
920
+ pentest_id: ::String,
921
+ actor_identifier: ::String
922
+ ) -> _ListActorMessagesResponseSuccess
923
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListActorMessagesResponseSuccess
924
+
906
925
  interface _ListAgentSpacesResponseSuccess
907
926
  include ::Seahorse::Client::_ResponseSuccess[Types::ListAgentSpacesOutput]
908
927
  def agent_space_summaries: () -> ::Array[Types::AgentSpaceSummary]
@@ -1090,7 +1109,8 @@ module Aws
1090
1109
  ?max_results: ::Integer,
1091
1110
  pentest_id: ::String,
1092
1111
  agent_space_id: ::String,
1093
- ?next_token: ::String
1112
+ ?next_token: ::String,
1113
+ ?job_type: ("FULL" | "REVALIDATION" | "CICD")
1094
1114
  ) -> _ListPentestJobsForPentestResponseSuccess
1095
1115
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListPentestJobsForPentestResponseSuccess
1096
1116
 
@@ -1271,8 +1291,17 @@ module Aws
1271
1291
  def start_pentest_job: (
1272
1292
  agent_space_id: ::String,
1273
1293
  pentest_id: ::String,
1274
- ?job_type: ("FULL" | "REVALIDATION"),
1275
- ?selected_finding_ids: Array[::String]
1294
+ ?job_type: ("FULL" | "REVALIDATION" | "CICD"),
1295
+ ?selected_finding_ids: Array[::String],
1296
+ ?scope_changes: Array[
1297
+ {
1298
+ integration_id: ::String,
1299
+ provider_resource_id: ::String,
1300
+ base_commit_sha: ::String?,
1301
+ head_commit_sha: ::String,
1302
+ trigger_run_id: ::String?
1303
+ }
1304
+ ]
1276
1305
  ) -> _StartPentestJobResponseSuccess
1277
1306
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _StartPentestJobResponseSuccess
1278
1307
 
@@ -1506,6 +1535,7 @@ module Aws
1506
1535
  def agent_space_id: () -> ::String
1507
1536
  def report_destination: () -> Types::ReportDestination
1508
1537
  def report_filters: () -> Types::ReportFilters
1538
+ def cicd_configuration: () -> Types::CiCdConfiguration
1509
1539
  end
1510
1540
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SecurityAgent/Client.html#update_pentest-instance_method
1511
1541
  def update_pentest: (
@@ -1534,7 +1564,10 @@ module Aws
1534
1564
  parent_id: ::String?,
1535
1565
  document_id: ::String?
1536
1566
  },
1537
- ?report_filters: Params::report_filters
1567
+ ?report_filters: Params::report_filters,
1568
+ ?cicd_configuration: {
1569
+ enabled: bool?
1570
+ }
1538
1571
  ) -> _UpdatePentestResponseSuccess
1539
1572
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdatePentestResponseSuccess
1540
1573
 
data/sig/types.rbs CHANGED
@@ -33,6 +33,14 @@ module Aws::SecurityAgent
33
33
  SENSITIVE: [:mfa_forwarding_address]
34
34
  end
35
35
 
36
+ class ActorMessage
37
+ attr_accessor sender: ::String
38
+ attr_accessor subject: ::String
39
+ attr_accessor body: ::String
40
+ attr_accessor received_at: ::Time
41
+ SENSITIVE: [:sender, :subject, :body]
42
+ end
43
+
36
44
  class AddArtifactInput
37
45
  attr_accessor agent_space_id: ::String
38
46
  attr_accessor artifact_content: ::String
@@ -443,6 +451,11 @@ module Aws::SecurityAgent
443
451
  SENSITIVE: []
444
452
  end
445
453
 
454
+ class CiCdConfiguration
455
+ attr_accessor enabled: bool
456
+ SENSITIVE: []
457
+ end
458
+
446
459
  class CloudWatchLog
447
460
  attr_accessor log_group: ::String
448
461
  attr_accessor log_stream: ::String
@@ -712,6 +725,7 @@ module Aws::SecurityAgent
712
725
  attr_accessor max_task_hours: ::Float
713
726
  attr_accessor report_destination: Types::ReportDestination
714
727
  attr_accessor report_filters: Types::ReportFilters
728
+ attr_accessor cicd_configuration: Types::CiCdConfiguration
715
729
  SENSITIVE: []
716
730
  end
717
731
 
@@ -727,6 +741,7 @@ module Aws::SecurityAgent
727
741
  attr_accessor agent_space_id: ::String
728
742
  attr_accessor report_destination: Types::ReportDestination
729
743
  attr_accessor report_filters: Types::ReportFilters
744
+ attr_accessor cicd_configuration: Types::CiCdConfiguration
730
745
  SENSITIVE: []
731
746
  end
732
747
 
@@ -1360,6 +1375,21 @@ module Aws::SecurityAgent
1360
1375
  SENSITIVE: []
1361
1376
  end
1362
1377
 
1378
+ class ListActorMessagesInput
1379
+ attr_accessor max_results: ::Integer
1380
+ attr_accessor next_token: ::String
1381
+ attr_accessor agent_space_id: ::String
1382
+ attr_accessor pentest_id: ::String
1383
+ attr_accessor actor_identifier: ::String
1384
+ SENSITIVE: []
1385
+ end
1386
+
1387
+ class ListActorMessagesOutput
1388
+ attr_accessor messages: ::Array[Types::ActorMessage]
1389
+ attr_accessor next_token: ::String
1390
+ SENSITIVE: []
1391
+ end
1392
+
1363
1393
  class ListAgentSpacesInput
1364
1394
  attr_accessor next_token: ::String
1365
1395
  attr_accessor max_results: ::Integer
@@ -1539,6 +1569,7 @@ module Aws::SecurityAgent
1539
1569
  attr_accessor pentest_id: ::String
1540
1570
  attr_accessor agent_space_id: ::String
1541
1571
  attr_accessor next_token: ::String
1572
+ attr_accessor job_type: ("FULL" | "REVALIDATION" | "CICD")
1542
1573
  SENSITIVE: []
1543
1574
  end
1544
1575
 
@@ -1753,6 +1784,7 @@ module Aws::SecurityAgent
1753
1784
  attr_accessor max_task_hours: ::Float
1754
1785
  attr_accessor report_destination: Types::ReportDestination
1755
1786
  attr_accessor report_filters: Types::ReportFilters
1787
+ attr_accessor cicd_configuration: Types::CiCdConfiguration
1756
1788
  attr_accessor created_at: ::Time
1757
1789
  attr_accessor updated_at: ::Time
1758
1790
  SENSITIVE: []
@@ -1784,9 +1816,13 @@ module Aws::SecurityAgent
1784
1816
  attr_accessor clean_up_strategy: ("BEST_EFFORT_DELETE" | "RETAIN_ALL")
1785
1817
  attr_accessor disable_managed_skills: ::Array[("FINDING_PERSONALIZATION" | "LOGIN_OPTIMIZATION")]
1786
1818
  attr_accessor max_task_hours: ::Float
1787
- attr_accessor job_type: ("FULL" | "REVALIDATION")
1819
+ attr_accessor job_type: ("FULL" | "REVALIDATION" | "CICD")
1788
1820
  attr_accessor selected_finding_ids: ::Array[::String]
1789
1821
  attr_accessor report_destination: Types::ReportDestination
1822
+ attr_accessor report_url: ::String
1823
+ attr_accessor scope_result: Types::ScopeResult
1824
+ attr_accessor scope_changes: ::Array[Types::ScopeChange]
1825
+ attr_accessor cicd_configuration: Types::CiCdConfiguration
1790
1826
  attr_accessor created_at: ::Time
1791
1827
  attr_accessor updated_at: ::Time
1792
1828
  SENSITIVE: []
@@ -1799,6 +1835,8 @@ module Aws::SecurityAgent
1799
1835
  attr_accessor status: ("IN_PROGRESS" | "STOPPING" | "STOPPED" | "FAILED" | "COMPLETED")
1800
1836
  attr_accessor created_at: ::Time
1801
1837
  attr_accessor updated_at: ::Time
1838
+ attr_accessor job_type: ("FULL" | "REVALIDATION" | "CICD")
1839
+ attr_accessor report_url: ::String
1802
1840
  SENSITIVE: []
1803
1841
  end
1804
1842
 
@@ -1905,6 +1943,21 @@ module Aws::SecurityAgent
1905
1943
  SENSITIVE: []
1906
1944
  end
1907
1945
 
1946
+ class ScopeChange
1947
+ attr_accessor integration_id: ::String
1948
+ attr_accessor provider_resource_id: ::String
1949
+ attr_accessor base_commit_sha: ::String
1950
+ attr_accessor head_commit_sha: ::String
1951
+ attr_accessor trigger_run_id: ::String
1952
+ SENSITIVE: []
1953
+ end
1954
+
1955
+ class ScopeResult
1956
+ attr_accessor decision: ("IN_SCOPE" | "SCOPED_OUT" | "SCOPE_CONFLICT")
1957
+ attr_accessor reason: ::String
1958
+ SENSITIVE: []
1959
+ end
1960
+
1908
1961
  class SecurityRequirementArtifact
1909
1962
  attr_accessor name: ::String
1910
1963
  attr_accessor format: ("MD" | "PDF" | "TXT" | "DOCX" | "DOC")
@@ -1994,8 +2047,9 @@ module Aws::SecurityAgent
1994
2047
  class StartPentestJobInput
1995
2048
  attr_accessor agent_space_id: ::String
1996
2049
  attr_accessor pentest_id: ::String
1997
- attr_accessor job_type: ("FULL" | "REVALIDATION")
2050
+ attr_accessor job_type: ("FULL" | "REVALIDATION" | "CICD")
1998
2051
  attr_accessor selected_finding_ids: ::Array[::String]
2052
+ attr_accessor scope_changes: ::Array[Types::ScopeChange]
1999
2053
  SENSITIVE: []
2000
2054
  end
2001
2055
 
@@ -2385,6 +2439,7 @@ module Aws::SecurityAgent
2385
2439
  attr_accessor max_task_hours: ::Float
2386
2440
  attr_accessor report_destination: Types::ReportDestination
2387
2441
  attr_accessor report_filters: Types::ReportFilters
2442
+ attr_accessor cicd_configuration: Types::CiCdConfiguration
2388
2443
  SENSITIVE: []
2389
2444
  end
2390
2445
 
@@ -2400,6 +2455,7 @@ module Aws::SecurityAgent
2400
2455
  attr_accessor agent_space_id: ::String
2401
2456
  attr_accessor report_destination: Types::ReportDestination
2402
2457
  attr_accessor report_filters: Types::ReportFilters
2458
+ attr_accessor cicd_configuration: Types::CiCdConfiguration
2403
2459
  SENSITIVE: []
2404
2460
  end
2405
2461
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-securityagent
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.16.0
4
+ version: 1.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services