Untuk membuat permintaan SMQ menggunakan Python SDK, Anda harus mengonfigurasi titik akhir dan kredensial akses. Layanan Alibaba Cloud menggunakan kredensial akses untuk memverifikasi identitas dan izin Anda. Anda dapat memilih jenis kredensial akses yang berbeda sesuai kebutuhan autentikasi dan otorisasi kasus penggunaan Anda. Topik ini menjelaskan cara mengonfigurasi titik akhir, kredensial akses temporary, dan kredensial akses jangka panjang.
Konfigurasi titik akhir
-
Unduh versi terbaru Python SDK. Ekstrak paket tersebut dan masuk ke subdirektori
aliyun-mns-python-sdk. -
Buka file
sample.cfguntuk mengonfigurasi titik akhir.-
Informasi titik akhir SMQ tersedia di bagian Endpoint pada halaman Queue Details atau Topic Details di Konsol. Masuk ke Konsol Message Service (MNS). Di Queue List, klik nama antrian target untuk membuka halaman Queue Details. Di bagian Endpoint di bagian bawah halaman, salin titik akhir untuk akses publik atau internal, lalu tambahkan ke file
sample.cfg. -
Titik akhir berbeda-beda berdasarkan wilayah.
-
Konfigurasi kredensial akses
Anda dapat menggunakan jenis kredensial akses berikut.
-
Kredensial akses jangka panjang: Untuk keamanan terbaik, gunakan kredensial akses temporary daripada kredensial akses jangka panjang. Meskipun kredensial akses jangka panjang lebih praktis karena tidak memerlukan penyegaran berkala, Anda disarankan untuk merotasinya setiap tiga bulan guna meningkatkan keamanan akun. Jika kredensial akses jangka panjang dikompromikan atau tidak lagi digunakan, segera hapus atau nonaktifkan untuk mencegah risiko keamanan.
-
Kredensial akses temporary: Untuk kasus penggunaan berkeamanan tinggi, seperti memberikan otorisasi sementara kepada aplikasi untuk mengakses SMQ, gunakan kredensial akses temporary. Kredensial ini hanya berlaku dalam rentang waktu terbatas, sehingga mengurangi risiko kompromi kredensial. Selain itu, kredensial ini mendukung kontrol akses detail halus, yang membantu menghindari risiko keamanan terkait izin berlebihan.
Gunakan kredensial akses jangka panjang
Saat Anda perlu mengakses layanan SMQ secara jangka panjang dari aplikasi atau layanan, Anda dapat menggunakan Pasangan Kunci Akses Pengguna RAM untuk mengakses SMQ Anda.
-
Peroleh Pasangan Kunci Akses Pengguna RAM.
Untuk informasi selengkapnya, lihat Buat Pasangan Kunci Akses untuk Pengguna RAM.
PentingRotasi setiap Pasangan Kunci Akses Pengguna RAM yang berusia lebih dari 3 bulan. Jika Pasangan Kunci Akses tidak lagi digunakan, segera nonaktifkan dan hapus untuk mencegah kebocoran.
-
Konfigurasikan Pasangan Kunci Akses Pengguna RAM.
Variabel lingkungan
-
Konfigurasikan variabel lingkungan.
macOS
-
Buka Terminal.
-
Jalankan perintah berikut.
nano ~/.bash_profile -
Tambahkan Pasangan Kunci Akses Pengguna RAM ke akhir file.
export ALIBABA_CLOUD_ACCESS_KEY_ID=LTA**** export ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs**** -
Tekan
Ctrl+X, tekanYuntuk mengonfirmasi, lalu tekanEnteruntuk menyimpan dan keluar. -
Jalankan perintah berikut untuk menerapkan perubahan.
source ~/.bash_profile -
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
echo $ALIBABA_CLOUD_ACCESS_KEY_ID echo $ALIBABA_CLOUD_ACCESS_KEY_SECRETContoh output yang berhasil:
LTA**** moiEs****
Linux
-
Buka Terminal.
-
Jalankan perintah berikut.
sudo vim /etc/profile -
Tambahkan Pasangan Kunci Akses Pengguna RAM ke akhir file.
export ALIBABA_CLOUD_ACCESS_KEY_ID=LTA**** export ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs**** -
Tekan
ESCuntuk keluar dari mode insert, masukkan:wq, lalu tekanEnteruntuk menyimpan dan keluar dari file. -
Jalankan perintah berikut untuk menerapkan perubahan.
source /etc/profile -
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
echo $ALIBABA_CLOUD_ACCESS_KEY_ID echo $ALIBABA_CLOUD_ACCESS_KEY_SECRETContoh output yang berhasil:
LTA**** moiEs****
Windows
GUI
Untuk mengatur Pasangan Kunci Akses Pengguna RAM sebagai variabel lingkungan menggunakan GUI Windows 10:
-
Di desktop Anda, klik kanan This PC dan pilih Properties > Advanced system settings > Environment Variables. Di bagian System variables atau User variables, klik New.
-
Tambahkan variabel lingkungan berikut.
Parameter
Contoh
ALIBABA_CLOUD_ACCESS_KEY_ID
LTA****
ALIBABA_CLOUD_ACCESS_KEY_SECRET
moiEs****
-
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
echo $ALIBABA_CLOUD_ACCESS_KEY_ID echo $ALIBABA_CLOUD_ACCESS_KEY_SECRETContoh output yang berhasil:
LTA**** moiEs****
CMD
-
Buka Command Prompt.
-
Jalankan perintah berikut untuk mengonfigurasi Pasangan Kunci Akses Pengguna RAM.
set ALIBABA_CLOUD_ACCESS_KEY_ID=LTA**** set ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs**** -
Jalankan perintah berikut untuk menerapkan perubahan.
setx ALIBABA_CLOUD_ACCESS_KEY_ID "%ALIBABA_CLOUD_ACCESS_KEY_ID%" setx ALIBABA_CLOUD_ACCESS_KEY_SECRET "%ALIBABA_CLOUD_ACCESS_KEY_SECRET%" -
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
echo %ALIBABA_CLOUD_ACCESS_KEY_ID% echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%Contoh output yang berhasil:
LTA**** moiEs****
Windows PowerShell
-
Tekan kombinasi tombol
Win + X. -
Atur Pasangan Kunci Akses Pengguna RAM.
Sesi saat ini
-
Dari menu pop-up, pilih Windows PowerShell.
-
Tambahkan variabel lingkungan berikut untuk sesi saat ini.
$env:ALIBABA_CLOUD_ACCESS_KEY_ID = "LTA****" $env:ALIBABA_CLOUD_ACCESS_KEY_SECRET = "moiEs****"
Sesi baru
-
Dari menu pop-up, pilih Windows PowerShell.
-
Tambahkan variabel lingkungan berikut untuk semua sesi baru.
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_ID', 'LTA****', [System.EnvironmentVariableTarget]::User) [System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_SECRET', 'moiEs****', [System.EnvironmentVariableTarget]::User)
Semua pengguna
-
Dari menu pop-up, pilih Windows PowerShell (Admin).
-
Tambahkan variabel lingkungan berikut untuk semua pengguna.
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_ID', 'LTA****', [System.EnvironmentVariableTarget]::Machine) [System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_SECRET', 'moiEs****', [System.EnvironmentVariableTarget]::Machine)
-
-
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
Get-ChildItem env:ALIBABA_CLOUD_ACCESS_KEY_ID Get-ChildItem env:ALIBABA_CLOUD_ACCESS_KEY_SECRETContoh output yang berhasil:
LTA**** moiEs****
-
-
Ambil Pasangan Kunci Akses Pengguna RAM dari variabel lingkungan.
// Konfigurasikan kredensial akses dengan menggunakan Pasangan Kunci Akses Pengguna RAM yang diperoleh dari variabel lingkungan. accid = os.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID") acckey = os.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
Embed dalam kode
PeringatanMenyematkan kredensial akses dalam kode Anda merupakan risiko keamanan signifikan. Kredensial yang bocor memungkinkan penyerang mengakses sumber daya SMQ Anda, yang berpotensi menyebabkan kerugian finansial. Kami sangat menyarankan menggunakan metode yang lebih aman, seperti variabel lingkungan.
accid,acckey,endpoint,token = MNSSampleCommon.LoadConfig() my_account = Account(endpoint, accid, acckey, token) -
Gunakan kredensial akses temporary
Saat Anda perlu mengakses layanan SMQ secara sementara, Anda dapat menggunakan Security Token Service (STS) untuk menerbitkan kredensial akses temporary. Kredensial akses temporary tidak mengharuskan Anda mengekspos Pasangan Kunci Akses Pengguna RAM, sehingga akses Anda ke SMQ menjadi lebih aman.
-
Buat Pengguna RAM.
Untuk informasi selengkapnya, lihat Buat Pengguna RAM.
-
Berikan izin
AliyunSTSAssumeRoleAccesskepada Pengguna RAM.Untuk informasi selengkapnya, lihat Kelola izin Pengguna RAM.
-
Gunakan Pengguna RAM untuk memanggil operasi AssumeRole STS guna memperoleh kredensial akses temporary.
Untuk informasi selengkapnya, lihat AssumeRole.
-
Konfigurasikan kredensial akses temporary dari STS.
Variabel lingkungan
-
Konfigurasikan variabel lingkungan menggunakan kredensial akses temporary yang Anda peroleh dari STS.
macOS
-
Buka Terminal.
-
Jalankan perintah berikut.
nano ~/.bash_profile -
Tambahkan kredensial akses temporary yang diperoleh dari STS (termasuk AccessKeyId, AccessKeySecret, dan SecurityToken) ke akhir file.
export MNS_ACCESS_KEY_ID=LTA**** export MNS_ACCESS_KEY_SECRET=moiEs**** export MNS_SESSION_TOKEN=CAES**** -
Tekan
Ctrl+X, tekanYuntuk mengonfirmasi, lalu tekanEnteruntuk menyimpan dan keluar. -
Jalankan perintah berikut untuk menerapkan perubahan.
source ~/.bash_profile -
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
echo $MNS_ACCESS_KEY_ID echo $MNS_ACCESS_KEY_SECRET echo $MNS_SESSION_TOKENContoh output yang berhasil:
LTA**** moiEs**** CAES****
Linux
-
Buka Terminal.
-
Jalankan perintah berikut.
sudo vim /etc/profile -
Tambahkan kredensial akses temporary yang diperoleh dari STS (termasuk AccessKeyId, AccessKeySecret, dan SecurityToken) ke akhir file.
export MNS_ACCESS_KEY_ID=LTA**** export MNS_ACCESS_KEY_SECRET=moiEs**** export MNS_SESSION_TOKEN=CAES**** -
Tekan
ESCuntuk keluar dari mode insert, masukkan:wq, lalu tekanEnteruntuk menyimpan dan keluar dari file. -
Jalankan perintah berikut untuk menerapkan perubahan.
source /etc/profile -
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
echo $MNS_ACCESS_KEY_ID echo $MNS_ACCESS_KEY_SECRET echo $MNS_SESSION_TOKENContoh output yang berhasil:
LTA**** moiEs**** CAES****
Windows
GUI
Untuk mengatur kredensial STS temporary sebagai variabel lingkungan menggunakan GUI Windows 10:
-
Di desktop Anda, klik kanan This PC dan pilih Properties > Advanced system settings > Environment Variables. Di bagian System variables/User variables, klik New.
-
Tambahkan variabel lingkungan berikut.
Parameter
Contoh
MNS_ACCESS_KEY_ID
LTA****
MNS_ACCESS_KEY_SECRET
moiEs****
MNS_SESSION_TOKEN
CAES****
-
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
echo %MNS_ACCESS_KEY_ID% echo %MNS_ACCESS_KEY_SECRET% echo %MNS_SESSION_TOKEN%Contoh output yang berhasil:
LTA**** moiEs**** CAES****
CMD
-
Buka Command Prompt.
-
Jalankan perintah berikut untuk mengonfigurasi kredensial akses temporary yang diperoleh dari STS (termasuk AccessKeyId, AccessKeySecret, dan SecurityToken).
set MNS_ACCESS_KEY_ID=LTA**** set MNS_ACCESS_KEY_SECRET=moiEs**** set MNS_SESSION_TOKEN=CAES**** -
Jalankan perintah berikut untuk menerapkan perubahan.
setx MNS_ACCESS_KEY_ID "%MNS_ACCESS_KEY_ID%" setx MNS_ACCESS_KEY_SECRET "%MNS_ACCESS_KEY_SECRET%" setx MNS_SESSION_TOKEN "%MNS_SESSION_TOKEN%" -
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
echo %MNS_ACCESS_KEY_ID% echo %MNS_ACCESS_KEY_SECRET% echo %MNS_SESSION_TOKEN%Contoh output yang berhasil:
LTA**** moiEs**** CAES****
Windows PowerShell
-
Tekan kombinasi tombol
Win + X. -
Atur kredensial akses temporary dari STS.
Sesi saat ini
-
Dari menu pop-up, pilih Windows PowerShell.
-
Tambahkan variabel lingkungan berikut untuk sesi saat ini.
$env:MNS_ACCESS_KEY_ID = "LTA****" $env:MNS_ACCESS_KEY_SECRET = "moiEs****" $env:MNS_SESSION_TOKEN = "CAE****"
Sesi baru
-
Dari menu pop-up, pilih Windows PowerShell.
-
Tambahkan variabel lingkungan berikut untuk semua sesi baru.
[System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_ID', 'LTA****', [System.EnvironmentVariableTarget]::User) [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_SECRET', 'moiEs****', [System.EnvironmentVariableTarget]::User) [System.Environment]::SetEnvironmentVariable('MNS_SESSION_TOKEN', 'CAES****', [System.EnvironmentVariableTarget]::User)
Semua pengguna
-
Dari menu pop-up, pilih Windows PowerShell (Admin).
-
Tambahkan variabel lingkungan berikut untuk semua pengguna.
[System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_ID', 'LTA****', [System.EnvironmentVariableTarget]::Machine) [System.Environment]::SetEnvironmentVariable('MNS_ACCESS_KEY_SECRET', 'moiEs****', [System.EnvironmentVariableTarget]::Machine) [System.Environment]::SetEnvironmentVariable('MNS_SESSION_TOKEN', 'CAES****', [System.EnvironmentVariableTarget]::Machine)
-
-
Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan.
Get-ChildItem env:MNS_ACCESS_KEY_ID Get-ChildItem env:MNS_ACCESS_KEY_SECRET Get-ChildItem env:MNS_SESSION_TOKENContoh output yang berhasil:
LTA**** moiEs**** CAES****
-
-
Ambil kredensial akses temporary dari STS dari variabel lingkungan.
accid = os.getenv("MNS_ACCESS_KEY_ID") acckey = os.getenv("MNS_ACCESS_KEY_SECRET") token = os.getenv("MNS_SESSION_TOKEN") or ""
Embed dalam kode
PeringatanMenyematkan kredensial akses dalam kode Anda merupakan risiko keamanan signifikan. Kredensial yang bocor memungkinkan penyerang mengakses sumber daya SMQ Anda, yang berpotensi menyebabkan kerugian finansial. Kami sangat menyarankan menggunakan metode yang lebih aman, seperti variabel lingkungan.
accid = os.getenv("MNS_ACCESS_KEY_ID") acckey = os.getenv("MNS_ACCESS_KEY_SECRET") token = os.getenv("MNS_SESSION_TOKEN") or "" endpoint = "example.endpoint" my_account = Account(endpoint, accid, acckey, token) -