Topik ini memberikan contoh lengkap tentang cara menggunakan API IMM untuk membuat proyek Intelligent Media Management (IMM).
Lihat dokumentasi API
Operasi CreateProject memungkinkan Anda membuat proyek IMM. Untuk informasi lebih lanjut tentang operasi tersebut, lihat CreateProject. Untuk detail lebih lanjut tentang operasi API IMM, lihat Daftar operasi berdasarkan fungsi.
Identitas pengguna dan izin
Identitas
Anda dapat memanggil operasi API menggunakan akun Alibaba Cloud, peran RAM, atau sebagai pengguna RAM. Untuk informasi lebih lanjut tentang perbedaan antara identitas tersebut, lihat Identitas, kredensial, dan otorisasi. Dalam contoh ini, pengguna RAM digunakan untuk memanggil operasi API. Di Konsol RAM, buat pengguna RAM yang hanya mendukung akses berbasis API, dan catat pasangan AccessKey dari pengguna RAM. Untuk informasi lebih lanjut, lihat Buat pengguna RAM.
Otorisasi
Di halaman Pengguna Konsol RAM, temukan pengguna RAM dan klik Add Permissions di kolom Actions.
Di bagian Policy, pilih AliyunIMMFullAccess dan AliyunSTSAssumeRoleAccess.
CatatanKebijakan AliyunIMMFullAccess memberikan izin manajemen kepada pengguna pada IMM. Untuk informasi lebih lanjut tentang izin IMM, lihat Konfigurasi peran layanan untuk proyek.
Untuk informasi lebih lanjut tentang cara memberikan izin kustom, lihat Berikan izin kepada pengguna RAM.
Klik Grant permissions.
Kredensial
Kredensial akses sementara: Untuk skenario yang memerlukan keamanan tinggi, seperti otorisasi akses sementara aplikasi untuk mengakses OSS, kami menyarankan Anda menggunakan kredensial akses sementara. Kredensial akses sementara valid dalam periode waktu tertentu, membantu mencegah kebocoran kredensial. Kredensial akses sementara juga mendukung kontrol akses granular, membantu secara efektif mencegah risiko keamanan yang disebabkan oleh izin berlebihan. Untuk informasi lebih lanjut, lihat Konfigurasi kredensial akses.
Kredensial akses jangka panjang: Untuk memastikan keamanan data, kami menyarankan Anda tidak menggunakan kredensial akses jangka panjang. Untuk skenario yang memerlukan kenyamanan, kredensial akses jangka panjang menghilangkan kebutuhan pembaruan berkali-kali dalam periode panjang. Kami menyarankan Anda mengubah kredensial akses jangka panjang setiap tiga bulan untuk memastikan keamanan akun. Jika kredensial akses jangka panjang bocor atau tidak lagi digunakan, Anda harus segera menghapus atau menonaktifkannya untuk mengurangi risiko keamanan. Untuk informasi lebih lanjut, lihat Konfigurasi kredensial akses.
Peroleh pasangan AccessKey jangka panjang
Secara default, pasangan AccessKey dihasilkan saat Anda membuat pengguna RAM. Anda dapat langsung menggunakan pasangan AccessKey tersebut.
Anda juga dapat secara manual membuat pasangan AccessKey untuk pengguna RAM dengan pergi ke halaman detail pengguna RAM dan mengklik Create AccessKey di tab Authentication. Untuk informasi lebih lanjut, lihat Buat pasangan AccessKey.
Peroleh kredensial akses sementara dari STS
Anda dapat memanggil operasi AssumeRole hanya sebagai pengguna RAM atau peran RAM. Anda tidak dapat menggunakan akun Alibaba Cloud untuk memanggil operasi tersebut.
Buat pengguna RAM.
Untuk informasi lebih lanjut, lihat Buat pengguna RAM.
Tambahkan kebijakan
AliyunSTSAssumeRoleAccesske pengguna RAM.Untuk informasi lebih lanjut, lihat Berikan izin kepada pengguna RAM.
Panggil operasi AssumeRole dari Security Token Service (STS) sebagai pengguna RAM untuk memperoleh kredensial akses sementara.
Untuk informasi lebih lanjut, lihat AssumeRole.
Menggunakan kredensial akses sementara yang disediakan oleh STS lebih aman daripada langsung menggunakan pasangan AccessKey untuk memanggil operasi. Jika Anda perlu mengakses IMM beberapa kali menggunakan kredensial akses sementara, Anda harus secara manual memperbarui token STS.
Panggil operasi API
Bagian ini menjelaskan cara memanggil operasi API menggunakan IMM SDK untuk Python. Anda dapat menggunakan IMM SDK untuk bahasa pemrograman lainnya untuk memanggil operasi API dengan cara serupa. Untuk informasi lebih lanjut, lihat SDK IMM.
Siapkan lingkungan Python
Unduh dan instal Python 3.
Untuk memeriksa versi Python, masukkan python --version di terminal dan tekan Enter.
Konfigurasikan variabel lingkungan untuk menyimpan pasangan AccessKey
Setelah Anda buat pasangan AccessKey, kami menyarankan Anda mengonfigurasi variabel lingkungan untuk pasangan AccessKey (ID AccessKey dan Rahasia AccessKey).
Pasangan AccessKey dari akun Alibaba Cloud memiliki izin pada semua operasi API. Kami menyarankan Anda menggunakan pasangan AccessKey dari pengguna RAM untuk memanggil operasi API atau melakukan O&M rutin.
Konfigurasikan pasangan AccessKey di variabel lingkungan pada Linux dan macOS
Dalam contoh ini, variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET dikonfigurasi. Anda dapat menggunakan nama variabel berbeda, seperti OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET.
Konfigurasikan variabel lingkungan menggunakan perintah export
Variabel lingkungan sementara yang dikonfigurasi menggunakan perintah export hanya valid untuk sesi saat ini. Setelah Anda keluar dari sesi, variabel lingkungan yang dikonfigurasi menjadi tidak valid. Untuk mengonfigurasi variabel lingkungan permanen, Anda dapat menambahkan perintah export ke file konfigurasi startup sistem operasi yang sesuai.
Konfigurasikan ID AccessKey dan tekan Enter.
# Ganti <ACCESS_KEY_ID> dengan ID AccessKey Anda. export ALIBABA_CLOUD_ACCESS_KEY_ID=yourAccessKeyIDKonfigurasikan Rahasia AccessKey dan tekan Enter.
# Ganti <ACCESS_KEY_SECRET> dengan Rahasia AccessKey Anda. export ALIBABA_CLOUD_ACCESS_KEY_SECRET=yourAccessKeySecretPeriksa apakah konfigurasi berhasil.
Jalankan perintah
echo $ALIBABA_CLOUD_ACCESS_KEY_ID. Jika ID AccessKey yang valid dikembalikan, variabel lingkungan telah dikonfigurasi.
Windows
Bagian ini memberikan contoh tentang cara mengonfigurasi variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET:
Gunakan GUI
Prosedur
Jika Anda ingin menggunakan GUI untuk mengonfigurasi variabel lingkungan di Windows 10, lakukan langkah-langkah berikut:
Di desktop Windows, klik kanan PC Ini dan pilih Properti. Di halaman yang muncul, klik Pengaturan sistem lanjutan. Di kotak dialog Properti Sistem, klik Variabel Lingkungan di tab Lanjutan. Di kotak dialog Variabel Lingkungan, klik Baru di bagian Variabel pengguna atau Variabel sistem. Lalu, konfigurasikan variabel yang dijelaskan dalam tabel berikut.
Variabel
Contoh
ID AccessKey
Nama variabel: ALIBABA_CLOUD_ACCESS_KEY_ID
Nilai variabel: LTAI****************
Rahasia AccessKey
Nama variabel: ALIBABA_CLOUD_ACCESS_KEY_SECRET
Nilai variabel: yourAccessKeySecret
Periksa apakah konfigurasi berhasil.
Di desktop Windows, klik Mulai atau tekan Win + R. Di kotak dialog Jalankan, masukkan cmd. Lalu, klik OK atau tekan Enter. Di halaman yang muncul, jalankan perintah
echo %ALIBABA_CLOUD_ACCESS_KEY_ID%danecho %ALIBABA_CLOUD_ACCESS_KEY_SECRET%. Jika pasangan AccessKey yang valid dikembalikan, konfigurasi berhasil.
Gunakan CMD
Prosedur
Buka jendela Command Prompt sebagai administrator dan jalankan perintah berikut untuk menambahkan variabel lingkungan di sistem operasi:
setx ALIBABA_CLOUD_ACCESS_KEY_ID yourAccessKeyID /M setx ALIBABA_CLOUD_ACCESS_KEY_SECRET yourAccessKeySecret /M/Mmenunjukkan bahwa variabel lingkungan bersifat level sistem. Anda dapat memilih untuk tidak menggunakan parameter ini saat mengonfigurasi variabel lingkungan level pengguna.Periksa apakah konfigurasi berhasil.
Di desktop Windows, klik Mulai atau tekan Win + R. Di kotak dialog Jalankan, masukkan cmd. Lalu, klik OK atau tekan Enter. Di halaman yang muncul, jalankan perintah
echo %ALIBABA_CLOUD_ACCESS_KEY_ID%danecho %ALIBABA_CLOUD_ACCESS_KEY_SECRET%. Jika pasangan AccessKey yang valid dikembalikan, konfigurasi berhasil.
Gunakan Windows PowerShell
Di PowerShell, konfigurasikan variabel lingkungan baru. Variabel lingkungan berlaku untuk semua sesi baru.
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_ID', 'yourAccessKeyID', [System.EnvironmentVariableTarget]::User)
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_SECRET', 'yourAccessKeySecret', [System.EnvironmentVariableTarget]::User)Konfigurasikan variabel lingkungan untuk semua pengguna. Anda harus menjalankan perintah berikut sebagai administrator.
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_ID', 'yourAccessKeyID', [System.EnvironmentVariableTarget]::Machine)
[System.Environment]::SetEnvironmentVariable('ALIBABA_CLOUD_ACCESS_KEY_SECRET', 'yourAccessKeySecret', [System.EnvironmentVariableTarget]::Machine)Konfigurasikan variabel lingkungan sementara. Variabel lingkungan hanya berlaku untuk sesi saat ini.
$env:ALIBABA_CLOUD_ACCESS_KEY_ID = "yourAccessKeyID"
$env:ALIBABA_CLOUD_ACCESS_KEY_SECRET = "yourAccessKeySecret"Di PowerShell, jalankan perintah Get-ChildItem env:ALIBABA_CLOUD_ACCESS_KEY_ID dan Get-ChildItem env:ALIBABA_CLOUD_ACCESS_KEY_SECRET. Jika pasangan AccessKey yang valid dikembalikan, konfigurasi berhasil.
Konfigurasikan variabel lingkungan untuk menyimpan kredensial akses sementara
Mac OS X/Linux/Unix
export IMM_ACCESS_KEY_ID=<ALIBABA_CLOUD_ACCESS_KEY_ID>
export IMM_ACCESS_KEY_SECRET=<ALIBABA_CLOUD_ACCESS_KEY_SECRET>
export IMM_SESSION_TOKEN=<ALIBABA_CLOUD_SECURITY_TOKEN>Windows
set IMM_ACCESS_KEY_ID <ALIBABA_CLOUD_ACCESS_KEY_ID>
set IMM_ACCESS_KEY_SECRET <ALIBABA_CLOUD_ACCESS_KEY_SECRET>
set IMM_SESSION_TOKEN <ALIBABA_CLOUD_SECURITY_TOKEN>Unduh kode sampel dan instal dependensi
pip install alibabacloud_credentials
Di tab Parameters, konfigurasikan parameter yang diperlukan. Misalnya, tentukan nama proyek.
pip install alibabacloud_tea_console
Ekstrak paket kode sampel secara lokal dan pergi ke direktori alibabacloud_sample.Jalankan kode sampel
Jalankan perintah berikut di terminal:
python sample.pyOutput sampel berikut dikembalikan.
{
"headers":{
"date":"Kam, 10 Agustus 2023 06:34:51 GMT",
"content-type":"application/json;charset=utf-8",
"content-length":"602",
"connection":"keep-alive",
"keep-alive":"timeout=25",
"access-control-allow-origin":"*",
"access-control-expose-headers":"*",
"x-acs-request-id":"2C489857-69E6-5974-B963-A7DF99EFFF43",
"x-acs-trace-id":"eccc35df82a086e7bb4f4fe778f****",
"etag":"6HYADxT6iVDNgQUq+wGO****"
},
"statusCode":200,
"body":{
"Project":{
"CreateTime":"2023-08-10T14:34:51.586696893+08:00",
"DatasetCount":0,
"DatasetMaxBindCount":10,
"DatasetMaxEntityCount":10000000000,
"DatasetMaxFileCount":100000000,
"DatasetMaxRelationCount":100000000000,
"DatasetMaxTotalFileSize":90000000000000000,
"Description":"",
"EngineConcurrency":200,
"FileCount":0,
"ProjectMaxDatasetCount":1000000000,
"ProjectName":"testproject",
"ProjectQueriesPerSecond":200,
"ServiceRole":"AliyunIMMDefaultRole",
"TemplateId":"Official:DefaultEmptyId",
"TotalFileSize":0,
"UpdateTime":"2023-08-10T14:34:51.586696977+08:00"
},
"RequestId":"2C489857-69E6-5974-B963-A7DF99EFFF43"
}
}