Dưới đây là hướng dẫn các bước thực hiện cấu hình AWS-SDK-RUBY
sudo apt install ruby-rubygems
sudo gem install 'aws-sdk-s3'
sudo gem install 'rubyzip'
setbucketcors.rb
với đoạn mã sau để thực hiện thiết lập cấu hình CORS cho bucketrequire "aws-sdk-s3"
def SetBucketCORS(s3_client, bucket_name)
resp = s3_client.put_bucket_cors({
bucket: bucket_name,
cors_configuration: {
cors_rules: [
{
allowed_headers: ["*"],
allowed_methods: ["PUT", "POST", "DELETE"],
allowed_origins: ["URL-Website"] # Địa chỉ website cần kết nối đến S3 Storage
},
{
allowed_origins: ["*"],
allowed_methods: ["GET"]
},
],
},
})
rescue StandardError => e
puts "Couldn't set CORS rules for #{bucket_name}. Here's why: #{e.message}"
exit 1
end
def run_me
s3_client = Aws::S3::Client.new(
access_key_id: "S3-Access-Key-ID", # Khóa S3 Access Key
secret_access_key: "S3-Secret-Access-Key", # Khóa S3 Secret Key
endpoint: "https://s3-hcm-r1.s3cloud.vn", # Endpoint VNDATA S3 Storage
region: "hcm" # Region VNDATA S3 Storage
)
bucket_name = "cors-bucket" # Tên bucket
SetBucketCORS(s3_client, bucket_name)
puts "Success set CORS configuration for #{bucket_name}."
end
run_me if $PROGRAM_NAME == __FILE__
ruby setbucketcors.rb
để thực hiện thiết lập cấu hình CORS cho bucketgetbucketcors.rb
với đoạn mã sau để thực hiện xem thông tin cấu hình CORS của bucketrequire "aws-sdk-s3"
def GetBucketCORS(s3_client, bucket_name)
resp = s3_client.get_bucket_cors({
bucket: bucket_name
})
resp.cors_rules.each do |n|
result = "#{n}"
puts result
end
rescue StandardError => e
puts "Couldn't get CORS information of #{bucket_name}. Here's why: #{e.message}"
exit 1
end
def run_me
s3_client = Aws::S3::Client.new(
access_key_id: "S3-Access-Key-ID", # Khóa S3 Access Key
secret_access_key: "S3-Secret-Access-Key", # Khóa S3 Secret Key
endpoint: "https://s3-hcm-r1.s3cloud.vn", # Endpoint VNDATA S3 Storage
region: "hcm" # Region VNDATA S3 Storage
)
bucket_name = "cors-bucket" # Tên bucket
GetBucketCORS(s3_client, bucket_name)
end
run_me if $PROGRAM_NAME == __FILE__
ruby getbucketcors.rb
để xem thông tin cấu hình CORS của bucket
deletebucketcors.rb
với đoạn mã sau để thực hiện xóa thông tin cấu hình CORS của bucketrequire "aws-sdk-s3"
def DeleteBucketCORS(s3_client, bucket_name)
resp = s3_client.delete_bucket_cors({
bucket: bucket_name
})
rescue StandardError => e
puts "Couldn't delete CORS configuration of #{bucket_name}. Here's why: #{e.message}"
exit 1
end
def run_me
s3_client = Aws::S3::Client.new(
access_key_id: "S3-Access-Key-ID",
secret_access_key: "S3-Secret-Access-Key",
endpoint: "https://s3-hcm-r1.s3cloud.vn",
region: "hcm"
)
bucket_name = "cors-bucket"
DeleteBucketCORS(s3_client, bucket_name)
puts "Success delete CORS configuration for #{bucket_name}."
end
run_me if $PROGRAM_NAME == __FILE__
ruby deletebucketcors.rb
để xóa thông tin cấu hình CORS của bucket