Hay más ejemplos de AWS SDK disponibles en el repositorio de GitHub de ejemplos de AWS SDK de documentos
Uso de CreateTrail con un SDK de AWS o la CLI
Los siguientes ejemplos de código muestran cómo utilizar CreateTrail.
- C++
-
- SDK para C++
-
nota
Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS
. // Routine which creates an AWS CloudTrail trail. /*! \param trailName: The name of the CloudTrail trail. \param bucketName: The Amazon S3 bucket designate for publishing logs. \param clientConfig: Aws client configuration. \return bool: Function succeeded. */ bool AwsDoc::CloudTrail::createTrail(const Aws::String trailName, const Aws::String bucketName, const Aws::Client::ClientConfiguration &clientConfig) { Aws::CloudTrail::CloudTrailClient trailClient(clientConfig); Aws::CloudTrail::Model::CreateTrailRequest request; request.SetName(trailName); request.SetS3BucketName(bucketName); Aws::CloudTrail::Model::CreateTrailOutcome outcome = trailClient.CreateTrail( request); if (outcome.IsSuccess()) { std::cout << "Successfully created trail " << trailName << std::endl; } else { std::cerr << "Failed to create trail " << trailName << ": " << outcome.GetError().GetMessage() << std::endl; } return outcome.IsSuccess(); }-
Para obtener información sobre la API, consulte CreateTrail en la Referencia de la API de AWS SDK para C++.
-
- CLI
-
- AWS CLI
-
Creación de un registro de seguimiento
En el siguiente ejemplo de
create-trail, se crea un registro de seguimiento multirregional denominadoTrail1y se especifica un bucket de S3.aws cloudtrail create-trail \ --nameTrail1\ --s3-bucket-nameamzn-s3-demo-bucket\ --is-multi-region-trailSalida:
{ "IncludeGlobalServiceEvents": true, "Name": "Trail1", "TrailARN": "arn:aws:cloudtrail:us-west-2:123456789012:trail/Trail1", "LogFileValidationEnabled": false, "IsMultiRegionTrail": true, "S3BucketName": "amzn-s3-demo-bucket" }-
Para obtener información sobre la API, consulte CreateTrail
en la Referencia de comandos de la AWS CLI.
-
- PowerShell
-
- Herramientas para PowerShell V4
-
Ejemplo 1: Crea un registro de seguimiento que utilizará el bucket “amzn-s3-demo-bucket” para almacenar los archivos de registro.
New-CTTrail -Name "awscloudtrail-example" -S3BucketName "amzn-s3-demo-bucket"Ejemplo 2: Crea un registro de seguimiento que utilizará el bucket “amzn-s3-demo-bucket” para almacenar los archivos de registro. Los objetos de S3 que representan los registros tendrán el prefijo de clave común “mylogs”. Cuando se envíen nuevos registros al bucket, se enviará una notificación al tema de SNS “mlog-deliverytopic”. En este ejemplo, se utiliza el método splatting para proporcionar los valores de los parámetros al cmdlet.
$params = @{ Name="awscloudtrail-example" S3BucketName="amzn-s3-demo-bucket" S3KeyPrefix="mylogs" SnsTopicName="mlog-deliverytopic" } New-CTTrail @params-
Para obtener información sobre la API, consulte CreateTrail en la Referencia de cmdlets de Herramientas de AWS para PowerShell (V4).
-
- Herramientas para PowerShell V5
-
Ejemplo 1: Crea un registro de seguimiento que utilizará el bucket “amzn-s3-demo-bucket” para almacenar los archivos de registro.
New-CTTrail -Name "awscloudtrail-example" -S3BucketName "amzn-s3-demo-bucket"Ejemplo 2: Crea un registro de seguimiento que utilizará el bucket “amzn-s3-demo-bucket” para almacenar los archivos de registro. Los objetos de S3 que representan los registros tendrán el prefijo de clave común “mylogs”. Cuando se envíen nuevos registros al bucket, se enviará una notificación al tema de SNS “mlog-deliverytopic”. En este ejemplo, se utiliza el método splatting para proporcionar los valores de los parámetros al cmdlet.
$params = @{ Name="awscloudtrail-example" S3BucketName="amzn-s3-demo-bucket" S3KeyPrefix="mylogs" SnsTopicName="mlog-deliverytopic" } New-CTTrail @params-
Para obtener información sobre la API, consulte CreateTrail en la Referencia de cmdlets de Herramientas de AWS para PowerShell (V5).
-
- Ruby
-
- SDK para Ruby
-
nota
Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS
. require 'aws-sdk-cloudtrail' # v2: require 'aws-sdk' require 'aws-sdk-s3' require 'aws-sdk-sts' def create_trail_example(s3_client, sts_client, cloudtrail_client, trail_name, bucket_name) resp = sts_client.get_caller_identity({}) account_id = resp.account # Attach policy to an Amazon Simple Storage Service (S3) bucket. s3_client.create_bucket(bucket: bucket_name) begin policy = { 'Version' => '2012-10-17', 'Statement' => [ { 'Sid' => 'AWSCloudTrailAclCheck20150319', 'Effect' => 'Allow', 'Principal' => { 'Service' => 'cloudtrail.amazonaws.com' }, 'Action' => 's3:GetBucketAcl', 'Resource' => "arn:aws:s3:::#{bucket_name}" }, { 'Sid' => 'AWSCloudTrailWrite20150319', 'Effect' => 'Allow', 'Principal' => { 'Service' => 'cloudtrail.amazonaws.com' }, 'Action' => 's3:PutObject', 'Resource' => "arn:aws:s3:::#{bucket_name}/AWSLogs/#{account_id}/*", 'Condition' => { 'StringEquals' => { 's3:x-amz-acl' => 'bucket-owner-full-control' } } } ] }.to_json s3_client.put_bucket_policy( bucket: bucket_name, policy: policy ) puts "Successfully added policy to bucket #{bucket_name}" end begin cloudtrail_client.create_trail({ name: trail_name, # required s3_bucket_name: bucket_name # required }) puts "Successfully created trail: #{trail_name}." rescue StandardError => e puts "Got error trying to create trail #{trail_name}:\n #{e}" puts e exit 1 end-
Para obtener información sobre la API, consulte CreateTrail en la Referencia de la API de AWS SDK para Ruby.
-