Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Titik akhir khusus layanan
catatan
Untuk bantuan dalam memahami tata letak halaman pengaturan, atau dalam menafsirkan tabel Support by AWS SDKs and tools berikut, lihatMemahami halaman pengaturan panduan ini.
Konfigurasi titik akhir khusus layanan menyediakan opsi untuk menggunakan titik akhir yang Anda pilih untuk permintaan API dan agar pilihan itu tetap ada. Pengaturan ini memberikan fleksibilitas untuk mendukung titik akhir lokal, titik akhir VPC, dan lingkungan pengembangan lokal pihak ketiga AWS . Titik akhir yang berbeda dapat digunakan untuk lingkungan pengujian dan produksi. Anda dapat menentukan URL endpoint untuk individu Layanan AWS.
Konfigurasikan fungsi ini dengan menggunakan yang berikut:
endpoint_url- Pengaturan AWSconfigfile bersamaAWS_ENDPOINT_URL- variabel lingkunganaws.endpointUrl- Properti sistem JVM: hanya Java/Kotlin-
Ketika ditentukan langsung dalam profil atau sebagai variabel lingkungan, pengaturan ini menentukan titik akhir yang digunakan untuk semua permintaan layanan. Titik akhir ini diganti oleh titik akhir khusus layanan yang dikonfigurasi.
Anda juga dapat menggunakan pengaturan ini dalam
servicesbagian AWSconfigfile bersama untuk menetapkan titik akhir kustom untuk layanan tertentu. Untuk daftar semua kunci pengenal layanan yang akan digunakan untuk subbagian dalamservicesbagian, lihat. Pengidentifikasi untuk titik akhir khusus layananNilai default:
noneNilai yang valid: URL termasuk skema dan host untuk titik akhir. URL secara opsional dapat berisi komponen jalur yang berisi satu atau beberapa segmen jalur.
AWS_ENDPOINT_URL_<SERVICE>- variabel lingkunganaws.endpointUrl<ServiceName>- Properti sistem JVM: hanya Java/Kotlin-
AWS_ENDPOINT_URL_<SERVICE>, di<SERVICE>mana Layanan AWS pengenal, menetapkan titik akhir khusus untuk layanan tertentu. Untuk daftar semua variabel lingkungan khusus layanan, lihat. Pengidentifikasi untuk titik akhir khusus layananTitik akhir khusus layanan ini mengesampingkan titik akhir global apa pun yang ditetapkan.
AWS_ENDPOINT_URLNilai default:
noneNilai yang valid: URL termasuk skema dan host untuk titik akhir. URL secara opsional dapat berisi komponen jalur yang berisi satu atau beberapa segmen jalur.
ignore_configured_endpoint_urls- Pengaturan AWSconfigfile bersamaAWS_IGNORE_CONFIGURED_ENDPOINT_URLS- variabel lingkunganaws.ignoreConfiguredEndpointUrls- Properti sistem JVM: hanya Java/Kotlin-
Pengaturan ini digunakan untuk mengabaikan semua konfigurasi titik akhir kustom.
Perhatikan bahwa setiap titik akhir eksplisit yang ditetapkan dalam kode atau pada klien layanan itu sendiri digunakan terlepas dari pengaturan ini. Misalnya, menyertakan parameter baris
--endpoint-urlperintah dengan AWS CLI perintah atau meneruskan URL titik akhir ke konstruktor klien akan selalu berlaku.Nilai default:
falseNilai yang valid:
-
trueSDK atau alat tidak membaca opsi konfigurasi khusus apa pun dariconfigfile bersama atau dari variabel lingkungan untuk menyetel URL titik akhir. -
falseSDK atau alat menggunakan titik akhir yang disediakan pengguna yang tersedia dariconfigfile bersama atau dari variabel lingkungan.
-
Konfigurasikan titik akhir menggunakan variabel lingkungan
Untuk merutekan permintaan semua layanan ke URL titik akhir kustom, setel variabel lingkungan AWS_ENDPOINT_URL global.
export AWS_ENDPOINT_URL=http://localhost:4567
Untuk merutekan permintaan spesifik Layanan AWS ke URL titik akhir kustom, gunakan variabel AWS_ENDPOINT_URL_<SERVICE> lingkungan. Amazon DynamoDB memiliki serviceId dari DynamoDBAWS_ENDPOINT_URL_DYNAMODB. Titik akhir ini lebih diutamakan daripada titik akhir global yang ditetapkan untuk layanan ini. AWS_ENDPOINT_URL
export AWS_ENDPOINT_URL_DYNAMODB=http://localhost:5678
Sebagai contoh lain, AWS Elastic Beanstalk memiliki serviceId a Elastic BeanstalkserviceId dengan mengganti semua spasi dengan garis bawah dan huruf atas semua huruf. Untuk mengatur titik akhir untuk layanan ini, variabel lingkungan yang sesuai adalahAWS_ENDPOINT_URL_ELASTIC_BEANSTALK. Untuk daftar semua variabel lingkungan khusus layanan, lihat. Pengidentifikasi untuk titik akhir khusus layanan
export AWS_ENDPOINT_URL_ELASTIC_BEANSTALK=http://localhost:5567
Konfigurasikan titik akhir menggunakan file bersama config
Dalam config file bersama, endpoint_url digunakan di tempat yang berbeda untuk fungsionalitas yang berbeda.
-
endpoint_urlditentukan secara langsung dalam aprofilemenjadikan titik akhir itu titik akhir global. -
endpoint_urlbersarang di bawah kunci pengenal layanan dalamservicesbagian membuat titik akhir tersebut berlaku untuk permintaan yang dibuat hanya untuk layanan tersebut. Untuk detail tentang mendefinisikanservicesbagian dalamconfigfile bersama Anda, lihatFormat file konfigurasi.
Contoh berikut menggunakan services definisi untuk mengonfigurasi URL titik akhir khusus layanan yang akan digunakan untuk Amazon S3 dan titik akhir global khusus yang akan digunakan untuk semua layanan lainnya:
[profiledev-s3-specific-and-global] endpoint_url =http://localhost:1234services =s3-specific[servicess3-specific] s3 = endpoint_url =http://play.min.io:9000
Satu profil dapat mengonfigurasi titik akhir untuk beberapa layanan. Contoh ini menunjukkan cara menyetel titik akhir khusus layanan untuk Amazon URLs S3 dan AWS Elastic Beanstalk
di profil yang sama. AWS Elastic Beanstalk memiliki serviceId dari Elastic BeanstalkserviceId dengan mengganti semua spasi dengan garis bawah dan huruf kecil semua huruf. Dengan demikian, kunci pengidentifikasi layanan menjadi elastic_beanstalk dan pengaturan untuk layanan ini dimulai pada teleponelastic_beanstalk = . Untuk daftar semua kunci pengenal layanan yang akan digunakan di services bagian ini, lihatPengidentifikasi untuk titik akhir khusus layanan.
[servicestesting-s3-and-eb] s3 = endpoint_url =http://localhost:4567elastic_beanstalk = endpoint_url =http://localhost:8000[profiledev] services =testing-s3-and-eb
Bagian konfigurasi layanan dapat digunakan dari beberapa profil. Misalnya, dua profil dapat menggunakan services definisi yang sama sambil mengubah properti profil lainnya:
[servicestesting-s3] s3 = endpoint_url =http://localhost:4567[profiletesting-json] output = json services =testing-s3[profiletesting-text] output = text services =testing-s3
Konfigurasikan titik akhir di profil menggunakan kredensi berbasis peran
Jika profil Anda memiliki kredensyal berbasis peran yang dikonfigurasi melalui source_profile parameter untuk fungsionalitas peran IAM, SDK hanya menggunakan konfigurasi layanan untuk profil yang ditentukan. Itu tidak menggunakan profil yang dirantai peran untuk itu. Misalnya, menggunakan config file bersama berikut:
[profileA] credential_source =Ec2InstanceMetadataendpoint_url =http://profile-a-endpoint.aws/[profileB] source_profile =Arole_arn =arn:aws:iam::123456789012:role/roleBservices =profileB[servicesprofileB] ec2 = endpoint_url =http://profile-b-ec2-endpoint.aws
Jika Anda menggunakan profil B dan membuat panggilan dalam kode Anda ke Amazon EC2, titik akhir akan diselesaikan sebagai. http://profile-b-ec2-endpoint.aws Jika kode Anda membuat permintaan ke layanan lain, resolusi titik akhir tidak akan mengikuti logika kustom apa pun. Titik akhir tidak menyelesaikan titik akhir global yang ditentukan dalam profil. A Agar titik akhir global berlaku untuk profilB, Anda perlu mengatur endpoint_url langsung di dalam profilB. Untuk informasi lebih lanjut tentang source_profile pengaturan, lihatAsumsikan penyedia kredensi peran.
Prioritas pengaturan
Pengaturan untuk fitur ini dapat digunakan pada saat yang sama tetapi hanya satu nilai yang akan diprioritaskan per layanan. Untuk panggilan API yang dibuat ke yang diberikan Layanan AWS, urutan berikut digunakan untuk memilih nilai:
-
Pengaturan eksplisit apa pun yang disetel dalam kode atau pada klien layanan itu sendiri lebih diutamakan daripada yang lain.
-
Untuk AWS CLI, ini adalah nilai yang disediakan oleh parameter baris
--endpoint-urlperintah. Untuk SDK, penetapan eksplisit dapat berupa parameter yang Anda tetapkan saat Anda membuat instance objek Layanan AWS klien atau konfigurasi.
-
-
Nilai yang diberikan oleh variabel lingkungan khusus layanan seperti.
AWS_ENDPOINT_URL_DYNAMODB -
Nilai yang diberikan oleh variabel lingkungan endpoint
AWS_ENDPOINT_URLglobal. -
Nilai yang diberikan oleh
endpoint_urlpengaturan bersarang di bawah kunci pengenal layanan dalamservicesbagian file bersamaconfig. -
Nilai yang diberikan oleh
endpoint_urlpengaturan ditentukan langsungprofiledalamconfigfile bersama. -
URL endpoint default untuk masing-masing Layanan AWS digunakan terakhir.
Support oleh AWS SDKs dan alat
Berikut ini SDKs mendukung fitur dan pengaturan yang dijelaskan dalam topik ini. Setiap pengecualian sebagian dicatat. Setiap pengaturan properti sistem JVM didukung oleh AWS SDK untuk Java dan satu-satunya. AWS SDK untuk Kotlin
| SDK | Didukung | Catatan atau informasi lebih lanjut |
|---|---|---|
| AWS CLI v2 | Ya | |
| SDK for C++ | Tidak | |
| SDK for Go V2 (1.x) |
Ya | |
| SDK for Go 1.x (V1) | Tidak | |
| SDK for Java 2.x | Ya | |
| SDK for Java 1.x | Tidak | |
| SDK untuk 3.x JavaScript | Ya | |
| SDK untuk 2.x JavaScript | Tidak | |
| SDK para Kotlin | Ya | |
| SDK for .NET 4.x | Ya | |
| SDK for .NET 3.x | Ya | |
| SDK for PHP 3.x | Ya | |
| SDK untuk Python (Boto3) |
Ya | |
| SDK for Ruby 3.x | Ya | |
| SDK untuk Rust | Ya | |
| SDK para Swift | Ya | |
| Alat untuk PowerShell V5 | Ya | |
| Alat untuk PowerShell V4 | Ya |