Untuk menggunakan Simple Message Queue (SMQ) SDK untuk Python dalam menginisiasi permintaan, Anda harus mengonfigurasi titik akhir dan kredensial akses. Layanan Alibaba Cloud memverifikasi informasi identitas dan izin akses melalui kredensial akses. Anda dapat memilih berbagai jenis kredensial akses sesuai dengan kebutuhan otentikasi dan otorisasi di skenario yang berbeda. Topik ini menjelaskan cara mengonfigurasi titik akhir, kredensial akses sementara, dan kredensial akses jangka panjang.
Konfigurasikan titik akhir
Unduh versi terbaru SMQ SDK untuk Python, ekstrak paket tersebut, lalu masuk ke subdirektori aliyun-mns-python-sdk.
Buka file sample.cfg dan konfigurasikan titik akhir.
Anda dapat melihat titik akhir dari SMQ di bagian Endpoint pada halaman Queue Details atau Topic Details.

Titik akhir SMQ bervariasi berdasarkan wilayah.
Konfigurasikan kredensial akses
Jenis-jenis kredensial akses berikut didukung:
Kredensial Akses Jangka Panjang: Untuk memastikan keamanan data, kami menyarankan agar Anda tidak menggunakan kredensial akses jangka panjang. Untuk skenario yang membutuhkan kenyamanan, kredensial akses jangka panjang menghilangkan kebutuhan pembaruan berkali-kali dalam periode waktu yang lama. Kami menyarankan Anda mengubah kredensial akses jangka panjang setiap tiga bulan untuk memastikan keamanan akun Alibaba Cloud Anda. Jika kredensial akses jangka panjang bocor atau tidak lagi digunakan, Anda dapat menghapus atau menonaktifkannya untuk mengurangi risiko keamanan.
Kredensial Akses Sementara: Untuk skenario yang memerlukan keamanan tinggi, seperti memberikan otorisasi sementara kepada aplikasi untuk mengakses SMQ, kami menyarankan Anda menggunakan kredensial akses sementara. Kredensial akses sementara hanya valid dalam periode waktu tertentu untuk mencegah kebocoran kredensial. Kredensial akses sementara mendukung kontrol akses dengan granularitas halus untuk mencegah risiko keamanan yang disebabkan oleh izin berlebihan.
Konfigurasikan kredensial akses jangka panjang
Jika Anda ingin mengakses SMQ dalam aplikasi atau layanan untuk jangka waktu panjang, Anda dapat menggunakan pasangan AccessKey dari pengguna Resource Access Management (RAM).
Peroleh pasangan AccessKey dari pengguna RAM.
Untuk informasi lebih lanjut, lihat bagian Buat Pasangan AccessKey untuk Pengguna RAM dari topik "Buat Pasangan AccessKey".
PentingKami menyarankan Anda memutar pasangan AccessKey dari pengguna RAM yang telah digunakan selama lebih dari tiga bulan. Kami juga menyarankan Anda menonaktifkan dan menghapus pasangan AccessKey dari pengguna RAM yang tidak digunakan dalam waktu lama untuk mengurangi risiko kebocoran pasangan AccessKey.
Konfigurasikan pasangan AccessKey dari pengguna RAM sebagai kredensial akses.
Konfigurasikan variabel lingkungan
Jalankan perintah berikut untuk mengonfigurasi variabel lingkungan:
macOS
Buka terminal.
Jalankan perintah berikut:
nano ~/.bash_profileTambahkan pasangan AccessKey dari pengguna RAM ke akhir file.
export ALIBABA_CLOUD_ACCESS_KEY_ID=LTA**** export ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs****Tekan
Ctrl+X, tekanYuntuk menyimpan file, lalu tekanEnteruntuk menutup file.Jalankan perintah berikut untuk membuat perubahan berlaku:
source ~/.bash_profileJalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:
echo $ALIBABA_CLOUD_ACCESS_KEY_ID echo $ALIBABA_CLOUD_ACCESS_KEY_SECRETContoh respons sukses:
LTA**** moiEs****
Linux
Buka terminal.
Jalankan perintah berikut:
sudo vim /etc/profileTambahkan pasangan AccessKey dari pengguna RAM ke akhir file.
export ALIBABA_CLOUD_ACCESS_KEY_ID=LTA**** export ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs****Tekan
Escuntuk keluar dari mode edit. Lalu, masukkan:wqdan tekanEnteruntuk menyimpan dan menutup file.Jalankan perintah berikut untuk membuat perubahan berlaku:
source /etc/profileJalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:
echo $ALIBABA_CLOUD_ACCESS_KEY_ID echo $ALIBABA_CLOUD_ACCESS_KEY_SECRETContoh respons sukses:
LTA**** moiEs****
Windows
Gunakan GUI
Dalam contoh ini, Windows 10 digunakan. Anda dapat melakukan langkah-langkah berikut untuk mengonfigurasi pasangan AccessKey dari pengguna RAM dengan menggunakan variabel lingkungan pada GUI:
Di desktop Windows, klik kanan This PC dan pilih Properties. Di halaman yang muncul, klik Advanced system settings. Dalam kotak dialog System Properties, klik Environment Variables pada tab Advanced. Dalam kotak dialog Environment Variables, klik New di bagian User variables or System variables.
Konfigurasikan variabel lingkungan. Tabel berikut menjelaskan variabel lingkungan.
Variabel
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 respons sukses:
LTA**** moiEs****
Gunakan CMD
Buka CLI.
Jalankan perintah berikut untuk mengonfigurasi variabel lingkungan dengan menggunakan pasangan AccessKey:
set ALIBABA_CLOUD_ACCESS_KEY_ID=LTA**** set ALIBABA_CLOUD_ACCESS_KEY_SECRET=moiEs****Jalankan perintah berikut untuk membuat perubahan berlaku:
setx ALIBABA_CLOUD_ACCESS_KEY_ID "%MNS_ACCESS_KEY_ID%" setx ALIBABA_CLOUD_ACCESS_KEY_SECRET "%MNS_ACCESS_KEY_SECRET%"Jalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:
echo %ALIBABA_CLOUD_ACCESS_KEY_ID% echo %ALIBABA_CLOUD_ACCESS_KEY_SECRET%Contoh respons sukses:
LTA**** moiEs****
Gunakan Windows PowerShell
Tekan
Win+X.Tentukan pasangan AccessKey dari pengguna RAM.
Berlaku untuk sesi saat ini
Dalam pesan yang muncul, pilih Windows PowerShell.
Tentukan variabel lingkungan berikut untuk sesi saat ini:
$env:ALIBABA_CLOUD_ACCESS_KEY_ID = "LTA****" $env:ALIBABA_CLOUD_ACCESS_KEY_SECRET = "moiEs****"
Berlaku untuk semua sesi baru
Dalam pesan yang muncul, pilih Windows PowerShell.
Tentukan 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)
Berlaku untuk semua pengguna
Dalam pesan yang muncul, pilih Windows PowerShell (Administrator).
Tentukan 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 respons sukses:
LTA**** moiEs****
Peroleh pasangan AccessKey dari pengguna RAM dari variabel lingkungan.
// Peroleh kredensial akses dari variabel lingkungan. accid = os.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID") acckey = os.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")
Tanamkan kredensial akses dalam kode
PeringatanMasalah keamanan dapat terjadi jika Anda menanamkan kredensial akses dalam kode. Kredensial akses yang bocor dapat digunakan oleh penyerang untuk mengakses sumber daya Anda, yang menyebabkan pelanggaran data. Untuk memastikan keamanan, kami menyarankan Anda menggunakan metode yang lebih aman, seperti memperoleh kredensial akses dari variabel lingkungan.
accid,acckey,endpoint,token = MNSSampleCommon.LoadConfig() my_account = Account(endpoint, accid, acckey, token)
Konfigurasikan kredensial akses sementara
Jika Anda ingin mengakses SMQ secara sementara, Anda dapat menggunakan Security Token Service (STS) untuk mengonfigurasi kredensial akses sementara yang disediakan oleh STS. Saat menggunakan kredensial akses sementara, Anda tidak perlu mengungkapkan pasangan AccessKey dari pengguna RAM Anda. Ini memastikan akses yang aman ke SMQ.
Buat pengguna RAM.
Untuk informasi lebih lanjut, lihat Buat Pengguna RAM.
Lampirkan kebijakan
AliyunSTSAssumeRoleAccesske pengguna RAM.Untuk informasi lebih lanjut, lihat Berikan Izin kepada Pengguna RAM.
Gunakan pengguna RAM untuk memanggil operasi AssumeRole dari STS untuk memperoleh kredensial akses sementara.
Untuk informasi lebih lanjut, lihat AssumeRole.
Konfigurasikan kredensial akses sementara yang diperoleh dari STS.
Konfigurasikan variabel lingkungan
Gunakan kredensial akses sementara yang diperoleh dari STS untuk mengonfigurasi variabel lingkungan.
macOS
Buka terminal.
Jalankan perintah berikut:
nano ~/.bash_profileTambahkan kredensial akses sementara, termasuk AccessKey ID, AccessKey Secret, dan token keamanan, yang diperoleh dari STS ke akhir file.
export MNS_ACCESS_KEY_ID=LTA**** export MNS_ACCESS_KEY_SECRET=moiEs**** export MNS_SESSION_TOKEN=CAES****Tekan
Ctrl+X, tekanYuntuk menyimpan file, lalu tekanEnteruntuk menutup file.Jalankan perintah berikut untuk membuat perubahan berlaku:
source ~/.bash_profileJalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:
echo $MNS_ACCESS_KEY_ID echo $MNS_ACCESS_KEY_SECRET echo $MNS_SESSION_TOKENContoh respons sukses:
LTA**** moiEs**** CAES****
Linux
Buka terminal.
Jalankan perintah berikut:
sudo vim /etc/profileTambahkan kredensial akses sementara, termasuk AccessKey ID, AccessKey Secret, dan token keamanan, yang diperoleh dari STS 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 edit. Lalu, masukkan:wqdan tekanEnteruntuk menyimpan dan menutup file.Jalankan perintah berikut untuk membuat perubahan berlaku:
source /etc/profileJalankan perintah berikut untuk memverifikasi konfigurasi variabel lingkungan:
echo $MNS_ACCESS_KEY_ID echo $MNS_ACCESS_KEY_SECRET echo $MNS_SESSION_TOKENContoh respons sukses:
LTA**** moiEs**** CAES****
Windows
Gunakan GUI
Dalam contoh ini, Windows 10 digunakan. Anda dapat melakukan langkah-langkahberikut untuk mengonfigurasi kredensial akses sementara STS dengan menggunakan variabel lingkungan pada GUI:
Di desktop Windows, klik kanan This PC dan pilih Properties. Di halaman yang muncul, klik Advanced system settings. Dalam kotak dialog System Properties, klik Environment Variables pada tab Advanced. Dalam kotak dialog Environment Variables, klik New di bagian User variables or System variables.
Konfigurasikan variabel lingkungan. Tabel berikut menjelaskan variabel lingkungan.
Variabel
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 respons sukses:
LTA**** moiEs**** CAES****
Gunakan CMD
Buka CLI.
Jalankan perintah berikut untuk mengonfigurasi variabel lingkungan dengan menggunakan kredensial akses sementara, termasuk AccessKey ID, AccessKey Secret, dan token keamanan:
set MNS_ACCESS_KEY_ID=LTA**** set MNS_ACCESS_KEY_SECRET=moiEs**** set MNS_SESSION_TOKEN=CAES****Jalankan perintah berikut untuk membuat perubahan berlaku:
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 respons sukses:
LTA**** moiEs**** CAES****
Gunakan Windows PowerShell
Tekan
Win+X.Tentukan kredensial akses sementara STS.
Berlaku untuk sesi saat ini
Dalam pesan yang muncul, pilih Windows PowerShell.
Tentukan variabel lingkungan berikut untuk sesi saat ini:
$env:MNS_ACCESS_KEY_ID = "LTA****" $env:MNS_ACCESS_KEY_SECRET = "moiEs****" $env:MNS_SESSION_TOKEN = "CAE****"
Berlaku untuk semua sesi baru
Dalam pesan yang muncul, pilih Windows PowerShell.
Tentukan 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)
Berlaku untuk semua pengguna
Dalam pesan yang muncul, pilih Windows PowerShell (Administrator).
Tentukan 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 respons sukses:
LTA**** moiEs**** CAES****
Peroleh kredensial akses sementara yang diperoleh 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 ""
Tanamkan kredensial akses dalam kode
PeringatanMasalah keamanan dapat terjadi jika Anda menanamkan kredensial akses dalam kode. Kredensial akses yang bocor dapat digunakan oleh penyerang untuk mengakses sumber daya Anda, yang menyebabkan pelanggaran data. Untuk memastikan keamanan, kami menyarankan Anda menggunakan metode yang lebih aman, seperti memperoleh kredensial akses dari 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)