Weitere AWS SDK-Beispiele sind im Repo AWS Doc SDK Examples GitHub verfügbar.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Codebeispiele für die Verwendung AWS Control TowerAWS SDKs
Die folgenden Codebeispiele zeigen Ihnen, wie Sie es AWS Control Tower mit einem AWS Software Development Kit (SDK) verwenden.
Bei Grundlagen handelt es sich um Code-Beispiele, die Ihnen zeigen, wie Sie die wesentlichen Vorgänge innerhalb eines Services ausführen.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarios anzeigen.
Erste Schritte
Die folgenden Codebeispiele veranschaulichen, wie Sie mit der Verwendung von AWS Control Tower beginnen.
- .NET
-
- SDK für .NET (v4)
-
Es gibt noch mehr dazu GitHub. Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.
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}");
}
}
}
- Python
-
- SDK für Python (Boto3)
-
Es gibt noch mehr dazu GitHub. Hier finden Sie das vollständige Beispiel und erfahren, wie Sie das AWS -Code-Beispiel- einrichten und ausführen.
import boto3
from typing import Any, List
def hello_controltower(controltower_client: Any) -> None:
"""
Use the AWS SDK for Python (Boto3) to create an AWS Control Tower client
and list all available baselines.
This example uses the default settings specified in your shared credentials
and config files.
:param controltower_client: A Boto3 AWS Control Tower Client object. This object wraps
the low-level AWS Control Tower service API.
"""
print("Hello, AWS Control Tower! Let's list available baselines:\n")
paginator = controltower_client.get_paginator("list_baselines")
page_iterator = paginator.paginate()
baseline_names: List[str] = []
try:
for page in page_iterator:
for baseline in page["baselines"]:
baseline_names.append(baseline["name"])
print(f"{len(baseline_names)} baseline(s) retrieved.")
for baseline_name in baseline_names:
print(f"\t{baseline_name}")
except controltower_client.exceptions.AccessDeniedException:
print("Access denied. Please ensure you have the necessary permissions.")
except Exception as e:
print(f"An error occurred: {str(e)}")
if __name__ == "__main__":
hello_controltower(boto3.client("controltower"))