All Products
Search
Document Center

Tablestore:Otorisasi lintas akun

Last Updated:May 07, 2026

Topik ini menjelaskan cara memberikan otorisasi kepada MaxCompute di satu Akun Alibaba Cloud untuk mengakses resource Tablestore di akun yang berbeda.

Prasyarat

Untuk mengaktifkan akses lintas akun, Anda memerlukan dua Akun Alibaba Cloud. Akun A, yang memiliki resource Tablestore, memberikan izin kepada Akun B sehingga MaxCompute di Akun B dapat mengakses data di Akun A. Tabel berikut merinci akun yang digunakan dalam contoh ini.

Catatan

Informasi dalam topik ini diberikan sebagai contoh. Ganti nilai contoh dengan informasi aktual Anda.

Item

Tablestore

MaxCompute

Nama Akun Alibaba Cloud

Akun A

Akun B

UID

1234567890****

5678901234****

Sebelum menggunakan MaxCompute untuk mengakses resource Tablestore lintas akun, selesaikan langkah-langkah berikut:

  • Untuk Akun B, aktifkan MaxCompute pada halaman detail produk MaxCompute dan buat ruang kerja. Untuk informasi selengkapnya, lihat Buat ruang kerja.

  • Dapatkan Pasangan Kunci Akses untuk kedua Akun A dan Akun B. Untuk informasi selengkapnya, lihat Dapatkan Pasangan Kunci Akses.

  • Di Akun A, buat Peran RAM dengan Alibaba Cloud account sebagai entitas tepercaya, lalu konfigurasikan kebijakan kepercayaannya. Untuk informasi selengkapnya, lihat Membuat Peran RAM untuk akun Alibaba Cloud dan Mengubah kebijakan kepercayaan Peran RAM.

    Catatan

    Dalam kebijakan tersebut, 5678901234**** adalah UID Akun B.

    Kebijakan kepercayaan contoh berikut memungkinkan layanan MaxCompute di Akun B untuk mengasumsikan Peran RAM ini.

    {
      "Statement": [
        {
          "Action": "sts:AssumeRole",
          "Effect": "Allow",
          "Principal": {
            "Service": [
              "5678901234****@odps.aliyuncs.com"
            ]
          }
        }
      ],
      "Version": "1"
    }
                            
  • Catat Nama Sumber Daya Alibaba Cloud (ARN) dari Peran RAM AliyunODPSRoleForOtherUser dari Akun A. Anda akan memerlukan ARN peran ini saat membuat tabel eksternal. Contoh: acs:ram::1234567890****:role/aliyunodpsroleforotheruser.fig_20220706_arn

  • Buat kebijakan dan sambungkan ke Peran RAM AliyunODPSRoleForOtherUser di Akun A. Untuk informasi selengkapnya, lihat Buat kebijakan kustom dan Kelola izin untuk Peran RAM.

    Kebijakan contoh berikut memberikan izin baca dan tulis kepada Peran RAM pada instans bernama cap1 dan semua tabelnya. Instans tersebut dimiliki oleh Akun A dan berlokasi di Wilayah China (Hangzhou).

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "ots:*",
          "Resource": [
          "acs:ots:cn-hangzhou:1234567890****:instance/cap1",
          "acs:ots:cn-hangzhou:1234567890****:instance/cap1/table/*"
          ],
          "Condition": {}
        }
      ]
    }

    Untuk informasi selengkapnya tentang kebijakan kustom, lihat Kebijakan RAM kustom.

  • Di Konsol Tablestore, buat instans dan tabel data. Untuk informasi selengkapnya, lihat Buat instans dan Buat tabel data.

    Dalam contoh ini, instans dan tabel data Tablestore dikonfigurasi sebagai berikut:

    • Nama instans: cap1

    • Nama tabel data: vehicle_track

    • Kunci utama: vid (integer), gt (integer)

    • Titik akhir: https://cap1.cn-hangzhou.ots-internal.aliyuncs.com

      Catatan

      Saat menggunakan MaxCompute untuk mengakses Tablestore, kami menyarankan agar Anda menggunakan titik akhir pribadi instans Tablestore.

    • Pastikan kontrol akses jaringan instans diatur ke Any Network.

Gunakan MaxCompute untuk mengakses Tablestore

Prosedur akses lintas akun identik dengan akses dalam akun yang sama, kecuali Anda harus menentukan ARN peran saat membuat tabel eksternal.

Di Akun B, buat tabel eksternal di MaxCompute dan tentukan ARN peran yang telah Anda buat di bagian Prasyarat untuk memberikan akses ke Tablestore.

CREATE EXTERNAL TABLE ads_log_ots_pt_external
(
vid bigint,
gt bigint,
longitude double,
latitude double,
distance double,
speed double,
oil_consumption double
)
STORED BY 'com.aliyun.odps.TableStoreStorageHandler'
WITH SERDEPROPERTIES (
'tablestore.columns.mapping'=':vid, :gt, longitude, latitude, distance, speed, oil_consumption',
'tablestore.table.name'='vehicle_track',
'odps.properties.rolearn'='acs:ram::1234567890****:role/aliyunodpsroleforotheruser'
)
LOCATION 'tablestore://cap1.cn-hangzhou.ots-internal.aliyuncs.com'
USING 'odps-udf-example.jar'