Konfigurasikan AWS SDK untuk Ruby - AWS SDKuntuk Ruby

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Konfigurasikan AWS SDK untuk Ruby

Pelajari cara mengkonfigurasi AWS SDK untuk Ruby. Anda harus menetapkan bagaimana kode Anda mengautentikasi dengan AWS ketika Anda mengembangkan dengan Layanan AWS. Anda juga harus mengatur yang ingin Wilayah AWS Anda gunakan.

Rantai penyedia kredensi

Semua SDKs memiliki serangkaian tempat (atau sumber) yang mereka periksa untuk mendapatkan kredensil yang valid untuk digunakan untuk membuat permintaan ke sebuah. Layanan AWS Setelah kredensi yang valid ditemukan, pencarian dihentikan. Pencarian sistematis ini disebut rantai penyedia kredensi default.

Untuk setiap langkah dalam rantai, ada berbagai cara untuk mengatur nilai. Menetapkan nilai secara langsung dalam kode selalu diutamakan, diikuti dengan pengaturan sebagai variabel lingkungan, dan kemudian di file bersama AWS config. Untuk informasi selengkapnya, lihat Prioritas pengaturan di Panduan Referensi Alat AWS SDKs dan Alat.

Panduan Referensi AWS SDKs and Tools memiliki informasi tentang pengaturan SDK konfigurasi yang digunakan oleh semua AWS SDKs dan AWS CLI. Untuk mempelajari lebih lanjut tentang cara mengonfigurasi SDK melalui AWS config file bersama, lihat File konfigurasi dan kredensial bersama. Untuk mempelajari lebih lanjut tentang cara mengonfigurasi variabel lingkungan SDK melalui pengaturan, lihat Dukungan variabel lingkungan.

Untuk mengautentikasi AWS, AWS SDK for Ruby memeriksa penyedia kredensi dalam urutan yang tercantum dalam tabel berikut.

Penyedia kredensi berdasarkan prioritas AWS SDKsdan Panduan Referensi Alat AWS SDK for Ruby APIReferensi
AWS kunci akses (kredensial sementara dan jangka panjang) AWS kunci akses

Aws::Credentials

Aws::SharedCredentials

Token identitas web dari AWS Security Token Service (AWS STS) Asumsikan penyedia kredensi peran

Menggunakanrole_arn,role_session_name, dan web_identity_token_file

Aws::AssumeRoleWebIdentityCredentials
AWS IAM Identity Center. Dalam panduan ini, lihatOtentikasi SDK denganAWS. IAMPenyedia kredensi Pusat Identitas Aws::SSOCredentials
Penyedia entitas tepercaya (sepertiAWS_ROLE_ARN). Dalam panduan ini, lihatMembuat token AWS STS akses. Asumsikan penyedia kredensi peran

Menggunakan role_arn dan role_session_name

Aws::AssumeRoleCredentials
Penyedia kredensi proses Penyedia kredensi proses Aws::ProcessCredentials
Kredensi Amazon Elastic Container Service (AmazonECS) Penyedia kredensi kontainer Aws::ECSCredentials
Kredensi profil instans Amazon Elastic Compute Cloud (AmazonEC2) (IMDSpenyedia kredensi) IMDSpenyedia kredensi Aws::InstanceProfileCredentials

Jika variabel lingkungan AWS SDK for Ruby AWS_SDK_CONFIG_OPT_OUT disetel, AWS config file bersama, biasanya di ~/.aws/config, tidak akan diurai untuk kredensialnya.

Jika Anda mengikuti pendekatan yang disarankan bagi pengguna baru untuk memulai, Anda menyiapkan AWS IAM Identity Center Otentikasi SDK denganAWS autentikasi selama topik Memulai. Metode otentikasi lainnya berguna untuk situasi yang berbeda. Untuk menghindari risiko keamanan, kami sarankan untuk selalu menggunakan kredensi jangka pendek. Untuk prosedur metode otentikasi lainnya, lihat Otentikasi dan akses di Panduan Referensi Alat AWS SDKs dan Alat.

Membuat token AWS STS akses

Dengan asumsi peran melibatkan penggunaan seperangkat kredensil keamanan sementara yang dapat Anda gunakan untuk mengakses AWS sumber daya yang biasanya tidak dapat Anda akses. Kredensial sementara ini terdiri dari access key ID, secret access key, dan token keamanan. Anda dapat menggunakan Aws::AssumeRoleCredentialsmetode ini untuk membuat token akses AWS Security Token Service (AWS STS).

Contoh berikut menggunakan token akses untuk membuat objek klien Amazon S3, di mana linked::account::arn adalah Amazon Resource Name (ARN) dari peran yang akan diambil dan session-name merupakan pengidentifikasi untuk sesi peran yang diasumsikan.

role_credentials = Aws::AssumeRoleCredentials.new( client: Aws::STS::Client.new, role_arn: "linked::account::arn", role_session_name: "session-name" ) s3 = Aws::S3::Client.new(credentials: role_credentials)

Untuk informasi selengkapnya tentang pengaturan role_arn ataurole_session_name, atau tentang menyetelnya menggunakan AWS config file bersama sebagai gantinya, lihat Mengasumsikan penyedia kredensi peran di Panduan Referensi Alat AWS SDKs dan.

Mengatur Wilayah

Anda perlu mengatur Wilayah saat menggunakan sebagian besar Layanan AWS. The AWS SDK for Ruby mencari Wilayah dengan urutan sebagai berikut:

Untuk informasi selengkapnya tentang region pengaturan, lihat Wilayah AWSdi Panduan Referensi Alat AWS SDKs dan Alat. Sisa bagian ini menjelaskan cara mengatur Wilayah, dimulai dengan pendekatan yang paling umum.

Mengatur Wilayah menggunakan config file bersama

Atur wilayah dengan mengatur region variabel dalam AWS config file bersama. Untuk informasi selengkapnya tentang config file bersama, lihat File konfigurasi dan kredensial bersama di Panduan Referensi Alat AWS SDKs dan Alat.

Contoh pengaturan nilai ini dalam config file:

[default] region = us-west-2

configFile bersama tidak diperiksa jika variabel lingkungan AWS_SDK_CONFIG_OPT_OUT disetel.

Mengatur Wilayah menggunakan variabel lingkungan

Mengatur Region dengan mengatur variabel AWS_REGION lingkungan.

Gunakan export perintah untuk mengatur variabel ini pada sistem berbasis Unix, seperti Linux atau macOS. Contoh berikut menetapkan Region keus-west-2.

export AWS_REGION=us-west-2

Untuk mengatur variabel ini pada Windows, gunakan set perintah. Contoh berikut menetapkan Region keus-west-2.

set AWS_REGION=us-west-2

Mengatur Wilayah dengan Aws.config

Atur Region dengan menambahkan region nilai ke Aws.config hash. Contoh berikut memperbarui Aws.config hash untuk menggunakan us-west-1 Wilayah.

Aws.config.update({region: 'us-west-1'})

Setiap klien atau sumber daya yang Anda buat nanti terikat ke Wilayah ini.

Mengatur Wilayah di klien atau objek sumber daya

Atur Wilayah saat Anda membuat AWS klien atau sumber daya. Contoh berikut membuat objek sumber daya Amazon S3 di Wilayah. us-west-1 Pilih Wilayah yang tepat untuk AWS sumber daya Anda. Objek klien layanan tidak dapat diubah, jadi Anda harus membuat klien baru untuk setiap layanan yang Anda minta dan untuk membuat permintaan ke layanan yang sama menggunakan konfigurasi yang berbeda.

s3 = Aws::S3::Resource.new(region: 'us-west-1')

Menetapkan titik akhir yang tidak standar

Wilayah ini digunakan untuk membangun SSL titik akhir yang akan digunakan untuk AWS permintaan. Jika Anda perlu menggunakan titik akhir yang tidak standar di Wilayah yang Anda pilih, tambahkan endpoint entri ke. Aws.config Atau, atur endpoint: saat membuat klien layanan atau objek sumber daya. Contoh berikut membuat objek sumber daya Amazon S3 di titik akhir. other_endpoint

s3 = Aws::S3::Resource.new(endpoint: other_endpoint)

Untuk menggunakan titik akhir yang Anda pilih untuk API permintaan dan agar pilihan itu tetap ada, lihat opsi konfigurasi titik akhir khusus layanan di Panduan Referensi Alat dan AWS SDKs.