CloudTrail exemplos de uso SDK para Ruby - AWS SDKExemplos de código

Há mais AWS SDK exemplos disponíveis no GitHub repositório AWS Doc SDK Examples.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

CloudTrail exemplos de uso SDK para Ruby

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS SDK for Ruby with CloudTrail.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, onde você pode encontrar instruções sobre como configurar e executar o código no contexto.

Tópicos

Ações

O código de exemplo a seguir mostra como usar CreateTrail.

SDKpara Ruby
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no Repositório de exemplos de código da 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 API obter detalhes, consulte CreateTrailem AWS SDK for Ruby APIReferência.

O código de exemplo a seguir mostra como usar DeleteTrail.

SDKpara Ruby
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no Repositório de exemplos de código da AWS.

client.delete_trail({ name: trail_name # required }) puts "Successfully deleted trail: " + trail_name rescue StandardError => err puts "Got error trying to delete trail: " + trail_name + ":" puts err exit 1 end
  • Para API obter detalhes, consulte DeleteTrailem AWS SDK for Ruby APIReferência.

O código de exemplo a seguir mostra como usar ListTrails.

SDKpara Ruby
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no Repositório de exemplos de código da AWS.

require "aws-sdk-cloudtrail" # v2: require 'aws-sdk' def describe_trails_example(client) resp = client.describe_trails({}) puts "Found #{resp.trail_list.count} trail(s)." resp.trail_list.each do |trail| puts "Name: " + trail.name puts "S3 bucket name: " + trail.s3_bucket_name puts end
  • Para API obter detalhes, consulte ListTrailsem AWS SDK for Ruby APIReferência.

O código de exemplo a seguir mostra como usar LookupEvents.

SDKpara Ruby
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no Repositório de exemplos de código da AWS.

require "aws-sdk-cloudtrail" # v2: require 'aws-sdk' # @param [Object] client def lookup_events_example(client) resp = client.lookup_events puts "Found #{resp.events.count} events:" resp.events.each do |e| puts "Event name: #{e.event_name}" puts "Event ID: #{e.event_id}" puts "Event time: #{e.event_time}" puts "Resources:" e.resources.each do |r| puts " Name: #{r.resource_name}" puts " Type: #{r.resource_type}" puts "" end end end
  • Para API obter detalhes, consulte LookupEventsem AWS SDK for Ruby APIReferência.