AWS Security ChangesHomeSearch

AWS code-library documentation change

Service: code-library · 2025-07-16 · Documentation low

File: code-library/latest/ug/controltower_code_examples.md

Summary

Added detailed .NET code example for AWS Control Tower ListBaselines API with error handling

Security assessment

Added general code example for API usage without specific security context or vulnerability mitigation

Diff

diff --git a/code-library/latest/ug/controltower_code_examples.md b/code-library/latest/ug/controltower_code_examples.md
index 6124e2f43..e9d62ab23 100644
--- a//code-library/latest/ug/controltower_code_examples.md
+++ b//code-library/latest/ug/controltower_code_examples.md
@@ -30 +30,89 @@ _Actions_ are code excerpts from larger programs and must be run in context. Whi
-The following code example shows how to get started using AWS Control Tower.
+The following code examples show how to get started using AWS Control Tower.
+
+.NET
+    
+
+**SDK for .NET (v4)**
+    
+
+###### Note
+
+There's more on GitHub. Find the complete example and learn how to set up and run in the [AWS Code Examples Repository](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/dotnetv4/ControlTower#code-examples). 
+    
+    
+    using Amazon.ControlTower;
+    using Amazon.ControlTower.Model;
+    using Microsoft.Extensions.DependencyInjection;
+    using Microsoft.Extensions.Hosting;
+    using Microsoft.Extensions.Logging;
+    using Microsoft.Extensions.Logging.Console;
+    using Microsoft.Extensions.Logging.Debug;
+    using LogLevel = Microsoft.Extensions.Logging.LogLevel;
+    
+    namespace ControlTowerActions;
+    
+    /// <summary>
+    /// A class that introduces the AWS Control Tower by listing the
+    /// available baselines for the account.
+    /// </summary>
+    public class HelloControlTower
+    {
+        private static ILogger logger = null!;
+    
+        static async Task Main(string[] args)
+        {
+            // Set up dependency injection for AWS Control Tower.
+            using var host = Host.CreateDefaultBuilder(args)
+                .ConfigureLogging(logging =>
+                    logging.AddFilter("System", LogLevel.Debug)
+                        .AddFilter<DebugLoggerProvider>("Microsoft", LogLevel.Information)
+                        .AddFilter<ConsoleLoggerProvider>("Microsoft", LogLevel.Trace))
+                .ConfigureServices((_, services) =>
+                    services.AddAWSService<IAmazonControlTower>()
+                )
+                .Build();
+    
+            logger = LoggerFactory.Create(builder => { builder.AddConsole(); })
+                .CreateLogger<HelloControlTower>();
+    
+            var amazonClient = host.Services.GetRequiredService<IAmazonControlTower>();
+    
+            Console.Clear();
+            Console.WriteLine("Hello, AWS Control Tower! Let's list available baselines:");
+            Console.WriteLine();
+    
+            var baselines = new List<BaselineSummary>();
+    
+            try
+            {
+                var baselinesPaginator = amazonClient.Paginators.ListBaselines(new ListBaselinesRequest());
+    
+                await foreach (var response in baselinesPaginator.Responses)
+                {
+                    baselines.AddRange(response.Baselines);
+                }
+    
+                Console.WriteLine($"{baselines.Count} baseline(s) retrieved.");
+                foreach (var baseline in baselines)
+                {
+                    Console.WriteLine($"\t{baseline.Name}");
+                }
+            }
+            catch (Amazon.ControlTower.Model.AccessDeniedException)
+            {
+                Console.WriteLine("Access denied. Please ensure you have the necessary permissions.");
+            }
+            catch (Exception ex)
+            {
+                Console.WriteLine($"An error occurred: {ex.Message}");
+            }
+        }
+    }
+    
+    
+    
+
+  * For API details, see [ListBaselines](https://docs.aws.amazon.com/goto/DotNetSDKV4/controltower-2018-05-10/ListBaselines) in _AWS SDK for .NET API Reference_. 
+
+
+
@@ -104,0 +193,2 @@ There's more on GitHub. Find the complete example and learn how to set up and ru
+      * [GetBaselineOperation](./controltower_example_controltower_GetBaselineOperation_section.html)
+