Secara default, resource OSS hanya dapat diakses oleh pemiliknya. Untuk memungkinkan akun Alibaba Cloud lain mengakses resource OSS Anda tanpa berbagi kredensial jangka panjang, buat peran Resource Access Management (RAM), berikan izin OSS yang diperlukan, dan izinkan RAM user dari akun tersebut mengasumsikan peran tersebut.
Skenario
Tutorial ini melibatkan dua akun:
Perusahaan A — memiliki resource OSS dan membuat peran RAM.
Perusahaan B — perlu mengakses resource tersebut dan menyediakan RAM user yang mengasumsikan peran tersebut.
Sebelum memulai
Sebelum memulai, perhatikan batasan berikut:
Secara default, setelah Perusahaan A membuat peran RAM, semua RAM user dan peran RAM di akun Perusahaan B dapat mengasumsikan peran tersebut. Untuk membatasi akses hanya ke pengguna atau peran tertentu, ubah kebijakan kepercayaan peran RAM tersebut setelah pembuatan. Untuk detailnya, lihat Contoh 1: Mengubah entitas tepercaya peran RAM menjadi akun Alibaba Cloud.
Kebijakan AliyunOSSReadOnlyAccess yang digunakan dalam tutorial ini memberikan izin read-only pada resource OSS. Untuk membatasi akses hanya ke bucket atau direktori tertentu, buat kebijakan kustom sebagai gantinya. Untuk detailnya, lihat Kebijakan RAM.
Langkah 1: Perusahaan A membuat peran RAM dan memberikan izin OSS
Login ke Konsol RAM sebagai Perusahaan A.
Pada panel navigasi kiri, pilih Identities > Roles.
Pada halaman Roles, klik Create Role.
Pada halaman Create Role, atur Principal Type menjadi Cloud Account dan Principal Name menjadi Other Account, lalu masukkan ID Akun Alibaba Cloud Perusahaan B dan klik OK.
Dalam contoh ini, ID akun Perusahaan B adalah
17464958576******.Pada kotak dialog Create Role, masukkan Role Name dan klik OK.
Dalam contoh ini, nama peran adalah
admin-oss.Pada halaman Roles, klik Grant Permission pada kolom Actions untuk peran
admin-oss.Pada panel Grant Permission, pilih kebijakan AliyunOSSReadOnlyAccess dan klik Grant permissions.
Langkah 2: Perusahaan B membuat RAM user dan memberikan izin assume-role
Login ke Konsol RAM sebagai Perusahaan B.
Pada panel navigasi kiri, pilih Identities > Users.
Pada halaman Users, klik Create User.
Pada bagian User Account Information, masukkan Logon Name dan Display Name.
Pada bagian Access Mode, pilih Console Access dan konfigurasikan Set Logon Password, Password Reset, dan Enable MFA sesuai kebutuhan Anda.
Catatan: Jika Anda memilih Reset Custom Password untuk Set Logon Password, kata sandi harus memenuhi persyaratan kompleksitas. Untuk detailnya, lihat Konfigurasikan kebijakan kata sandi untuk RAM user.
Klik OK.
Pada halaman Users, klik Add Permissions pada kolom Actions untuk RAM user yang telah Anda buat.
Pada panel Grant Permission, pilih System Policy dari daftar drop-down jenis kebijakan, pilih AliyunSTSAssumeRoleAccess, lalu klik Grant permissions.
Langkah 3: RAM user Perusahaan B mengasumsikan peran RAM
Login ke Konsol Manajemen Alibaba Cloud sebagai RAM user Perusahaan B. Untuk detailnya, lihat Login ke Konsol Manajemen Alibaba Cloud sebagai RAM user.
Di pojok kanan atas, arahkan pointer ke gambar profil dan klik Switch Identity.
Pada halaman Switch Role, masukkan informasi berikut dan klik Submit:
Field Value Enterprise Alias/Default Domain Name Alias perusahaan, nama domain default, atau UID Perusahaan A. Dalam contoh ini, digunakan nama domain default 178810717******.onaliyun.com.Role Name admin-ossLogin ke Konsol OSS untuk mengakses dan mengelola resource OSS milik Perusahaan A.
Verifikasi akses
Setelah mengasumsikan peran, pastikan akses cross-account berfungsi:
Di Konsol OSS, verifikasi bahwa bucket milik Perusahaan A terdaftar.
Buka salah satu bucket dan pastikan Anda dapat melihat daftar objek.
Jika bucket tidak muncul atau Anda menerima error izin, periksa hal berikut:
Peran RAM Perusahaan A telah menyambungkan kebijakan AliyunOSSReadOnlyAccess (Langkah 1).
RAM user Perusahaan B telah menyambungkan kebijakan AliyunSTSAssumeRoleAccess (Langkah 2).
Alias perusahaan, nama domain default, atau UID serta nama peran yang dimasukkan pada halaman Switch Role sudah benar (Langkah 3).
Langkah selanjutnya
Tutorial ini menggunakan satu kebijakan sistem demi kesederhanaan. Di lingkungan produksi, pertimbangkan hal berikut:
Batasi siapa yang dapat mengasumsikan peran: Secara default, semua RAM user dan peran RAM Perusahaan B dapat mengasumsikan peran
admin-oss. Perbarui kebijakan kepercayaan untuk membatasi akses hanya ke RAM user tertentu. Untuk detailnya, lihat Contoh 1: Mengubah entitas tepercaya peran RAM menjadi akun Alibaba Cloud.Gunakan kebijakan kustom untuk akses least-privilege: Ganti AliyunOSSReadOnlyAccess dengan kebijakan kustom yang hanya memberikan akses ke bucket atau direktori tertentu. Untuk detailnya, lihat Kebijakan RAM.
Pendekatan alternatif: Untuk mengonfigurasi akses di tingkat bucket alih-alih melalui peran RAM, lihat Tutorial: Otorisasi RAM user di akun Alibaba Cloud lain dengan menambahkan kebijakan bucket.