Simple Log Service mendukung role default dan role kustom untuk pekerjaan transformasi data. Untuk menggunakan role kustom, berikan izin baca dan tulis pada logstore terkait.
Prasyarat
Peran RAM telah dibuat. Untuk informasi selengkapnya, lihat Buat RAM role untuk layanan Alibaba Cloud tepercaya.
Saat membuat RAM role, atur Principal Type ke Cloud Service, dan Principal Name ke Simple Log Service.
Periksa kebijakan kepercayaan RAM role tersebut. Pastikan elemen
Servicesetidaknya berisi"log.aliyuncs.com".{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "log.aliyuncs.com" ] } } ], "Version": "1" }
Berikan akses read-only ke logstore sumber
Berikan akses baca RAM role ke logstore sumber. Tentukan role ini saat Anda Membuat pekerjaan transformasi data.
-
Masuk ke RAM console menggunakan Akun Alibaba Cloud atau RAM user yang memiliki hak administratif.
Buat kebijakan kustom. Dalam contoh ini, kebijakan
log-etl-source-reader-policydibuat. Kebijakan ini memberikan izin read-only pada logstore sumber. Untuk informasi selengkapnya, lihat Gunakan editor JSON.Pada tab JSON halaman Create Policy, Anda dapat menggunakan isi kebijakan yang menggunakan exact match atau fuzzy match untuk otorisasi guna menggantikan skrip yang ada di editor kode.
Exact match untuk otorisasi
Dalam contoh ini, nama proyek sumber adalah log-project-prod, dan nama logstore sumber adalah access_log. Ganti nama proyek dan logstore sesuai kebutuhan bisnis Anda.
{ "Version": "1", "Statement": [ { "Action": [ "log:ListShards", "log:GetCursorOrData", "log:GetConsumerGroupCheckPoint", "log:UpdateConsumerGroup", "log:ConsumerGroupHeartBeat", "log:ConsumerGroupUpdateCheckPoint", "log:ListConsumerGroup", "log:CreateConsumerGroup" ], "Resource": [ "acs:log:*:*:project/log-project-prod/logstore/access_log", "acs:log:*:*:project/log-project-prod/logstore/access_log/*" ], "Effect": "Allow" } ] }Fuzzy match untuk otorisasi
Dalam contoh ini, nama proyek sumber adalah log-project-dev-a, log-project-dev-b, dan log-project-dev-c, serta nama logstore sumber adalah app_a_log, app_b_log, dan app_c_log. Ganti nama proyek dan logstore sesuai kebutuhan bisnis Anda.
{ "Version": "1", "Statement": [ { "Action": [ "log:ListShards", "log:GetCursorOrData", "log:GetConsumerGroupCheckPoint", "log:UpdateConsumerGroup", "log:ConsumerGroupHeartBeat", "log:ConsumerGroupUpdateCheckPoint", "log:ListConsumerGroup", "log:CreateConsumerGroup" ], "Resource": [ "acs:log:*:*:project/log-project-dev-*/logstore/app_*_log", "acs:log:*:*:project/log-project-dev-*/logstore/app_*_log/*" ], "Effect": "Allow" } ] }-
Lampirkan kebijakan kustom yang telah dibuat ke RAM role tersebut. Untuk informasi selengkapnya, lihat Manage permissions for a RAM role.
Berikan izin tulis ke logstore tujuan (akun yang sama)
Jika logstore sumber dan tujuan berada dalam satu akun Alibaba Cloud yang sama, berikan akses tulis RAM role ke logstore tujuan. Tentukan role ini saat Anda Membuat pekerjaan transformasi data.
Buat kebijakan kustom. Dalam contoh ini, kebijakan
log-etl-target-writer-policydibuat. Kebijakan ini memberikan izin untuk menulis hasil transformasi ke logstore tujuan. Untuk informasi selengkapnya, lihat Gunakan editor JSON.Pada tab JSON halaman Create Policy, Anda dapat menggunakan isi kebijakan yang menggunakan exact match atau fuzzy match untuk otorisasi guna menggantikan skrip yang ada di editor kode.
Exact match untuk otorisasi
Dalam contoh ini, nama proyek tujuan adalah log-project-prod, dan nama logstore tujuan adalah access_log_output. Ganti nama proyek dan logstore sesuai kebutuhan bisnis Anda.
{ "Version": "1", "Statement": [ { "Action": [ "log:Post*" ], "Resource": "acs:log:*:*:project/log-project-prod/logstore/access_log_output", "Effect": "Allow" } ] }Fuzzy match untuk otorisasi
Dalam contoh ini, nama proyek tujuan adalah log-project-dev-a, log-project-dev-b, dan log-project-dev-c, serta nama logstore tujuan adalah app_a_log_output, app_b_log_output, dan app_c_log_output. Ganti nama proyek dan logstore sesuai kebutuhan bisnis Anda.
{ "Version": "1", "Statement": [ { "Action": [ "log:Post*", "log:BatchPost*" ], "Resource": "acs:log:*:*:project/log-project-dev-*/logstore/app_*_log_output", "Effect": "Allow" } ] }-
Lampirkan kebijakan kustom yang telah dibuat ke RAM role tersebut. Untuk informasi selengkapnya, lihat Manage permissions for a RAM role.
Berikan izin tulis ke logstore tujuan (cross-account)
Jika logstore sumber dan tujuan berada dalam akun Alibaba Cloud yang berbeda, ubah kebijakan kepercayaan RAM role akun tujuan agar mengizinkan akses cross-account. Langkah-langkah berikut menggunakan Akun A (sumber) dan Akun B (tujuan) sebagai contoh.
Sebelum memulai, berikan RAM role di Akun B akses tulis ke logstore tujuan seperti yang dijelaskan dalam Berikan izin tulis ke logstore tujuan (akun yang sama).
-
Masuk ke RAM console menggunakan Akun Alibaba Cloud atau RAM user yang memiliki hak administratif.
-
Di panel navigasi sebelah kiri, pilih .
-
Temukan dan klik RAM role target.
-
Pada tab Trust Policy, klik Edit Trust Policy.
Tambahkan
ID akun Alibaba Cloud Akun A tempat logstore sumber beradake bidangService. GantiID akun Alibaba Cloud Akun A tempat logstore sumber beradadengan ID akun aktual dari Account Management. Kebijakan ini memungkinkan Akun A menggunakan token SLS temporary untuk mengoperasikan resource milik Akun B.{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "Alibaba Cloud account ID of Account A@log.aliyuncs.com" ] } } ], "Version": "1" } -
Dapatkan Nama Sumber Daya Alibaba Cloud (ARN) dari RAM role tersebut. Untuk informasi selengkapnya, lihat View a RAM role.
Langkah selanjutnya
Tentukan ARN RAM role saat Anda Membuat pekerjaan transformasi data.