全部产品
Search
文档中心

Blockchain as a Service:Otentikasi RAM Hyperledger Fabric

更新时间:Jan 16, 2026

Untuk mengizinkan pengguna RAM memanggil API Blockchain as a Service (BaaS), buat kebijakan otorisasi yang memberikan izin yang diperlukan. Dalam kebijakan tersebut, tentukan resource yang diizinkan menggunakan Nama Sumber Daya Alibaba Cloud (ARN)-nya.

Topik ini menjelaskan aturan otentikasi Resource Access Management (RAM) untuk layanan Blockchain as a Service (BaaS). Anda dapat menggunakan aturan ini untuk mengotentikasi anggota tim, memberikan akses resource lintas akun berbeda, serta mengotorisasi akses lintas layanan cloud. Untuk informasi selengkapnya tentang RAM, lihat dokumentasi RAM dan referensi API RAM.

Jenis resource Hyperledger Fabric yang dapat diotorisasi

Saat memberikan izin kepada pengguna RAM, deskripsikan resource Hyperledger Fabric sebagai berikut:

Jenis sumber dayaMetode deskripsi resource dalam kebijakan otorisasi
Konsorsiumacs:baas:$regionId:$accountId:consortium/$consortiumId
Organisasiacs:baas:$regionId:$accountId:organization/$organizationId
Saluranacs:baas:*:$accountId:channel/$channelId
Chaincodeacs:baas:*:$accountId:chaincode/$chaincodeId

Dalam format tersebut, $regionId adalah Wilayah tempat resource berada. $accountId adalah ID Akun Alibaba Cloud yang memiliki resource tersebut. $consortiumId/$organizationId/$channelId/$chaincodeId adalah ID resource tersebut di BaaS.

Catatan Channel dan chaincode merupakan resource global. Wilayah harus berupa "*".

API Hyperledger Fabric yang dapat diotorisasi

Tabel berikut mencantumkan API blockchain Hyperledger Fabric yang diotorisasi secara default. Pengguna RAM dan pemegang token Security Token Service (STS) memiliki izin untuk API-API ini secara default:

API
CheckFabricConsortiumDomain
CheckFabricOrganizationDomain
DescribeTasks
DescribeRootDomain
DescribeFabricConsortiumConfig
DescribeFabricConsortiumSpecs
DescribeFabricOrganizationSpecs
DescribeFabricInviter
DescribeFabricChaincodeUploadPolicy
AcceptFabricInvitation

Tabel berikut mencantumkan API Hyperledger Fabric yang dapat diotorisasi beserta format ARN-nya:

APIDeskripsi Sumber Daya
CreateFabricOrganizationacs:baas:$regionId:$accountId:organization/*
DescribeFabricOrganizationacs:baas:$regionId:$accountId:organization/$organizationId
DescribeFabricOrganizationDeletableacs:baas:$regionId:$accountId:organization/$organizationId
DescribeFabricOrganizationsacs:baas:*:$accountId:organization/*
DescribeFabricCandidateOrganizationsacs:baas:*:$accountId:organization/*
CreateFabricChannelacs:baas:*:$accountId:channel/*

acs:baas:$regionId:$accountId:consortium/$consortiumId

DescribeFabricOrganizationChannelsacs:baas:$regionId:$accountId:organization/$organizationId
DescribeFabricConsortiumChannelsacs:baas:$regionId:$accountId:consortium/$consortiumId
CreateFabricChannelMemberacs:baas:*:$accountId:channel/$channelId
DescribeFabricChannelMembersacs:baas:*:$accountId:channel/$channelId
JoinFabricChannelacs:baas:*:$accountId:channel/$channelId
CreateFabricConsortiumacs:baas:$regionId:$accountId:consortium/*
CreateFabricConsortiumMemberacs:baas:$regionId:$accountId:consortium/$consortiumId
ConfirmFabricConsortiumMemberacs:baas:$regionId:$accountId:consortium/$consortiumId
DescribeFabricOrganizationMembersacs:baas:$regionId:$accountId:organization/$organizationId
DescribeFabricOrganizationPeersacs:baas:$regionId:$accountId:organization/$organizationId
DescribeFabricConsortiumsacs:baas:*:$accountId:consortium/*
DescribeFabricConsortiumAdminStatusacs:baas:*:$accountId:consortium/*
DescribeFabricConsortiumMembersacs:baas:$regionId:$accountId:consortium/$consortiumId
DescribeFabricConsortiumMemberApprovalacs:baas:$regionId:$accountId:consortium/$consortiumId
DescribeFabricConsortiumOrderersacs:baas:$regionId:$accountId:consortium/$consortiumId
DescribeFabricConsortiumDeletableacs:baas:$regionId:$accountId:consortium/$consortiumId
CreateFabricChaincodeacs:baas:*:$accountId:chaincode/*

acs:baas:*:$accountId:channel/$channelId

acs:baas:$regionId:$accountId:consortium/$consortiumId

acs:baas:$regionId:$accountId:organization/$organizationId

DescribeFabricOrganizationChaincodesacs:baas:$regionId:$accountId:organization/$organizationId
DescribeFabricConsortiumChaincodesacs:baas:$regionId:$accountId:consortium/$consortiumId
DeleteFabricChaincodeacs:baas:*:$accountId:chaincode/$chaincodeId
InstallFabricChaincodeacs:baas:*:$accountId:chaincode/$chaincodeId

acs:baas:$regionId:$accountId:organization/$organizationId

InstantiateFabricChaincodeacs:baas:*:$accountId:chaincode/$chaincodeId

acs:baas:$regionId:$accountId:organization/$organizationId

UpgradeFabricChaincodeacs:baas:*:$accountId:chaincode/$chaincodeId

acs:baas:$regionId:$accountId:organization/$organizationId

SynchronizeFabricChaincodeacs:baas:*:$accountId:chaincode/$chaincodeId

acs:baas:$regionId:$accountId:organization/$organizationId

CreateFabricOrganizationUseracs:baas:$regionId:$accountId:organization/$organizationId
DescribeFabricOrganizationUsersacs:baas:$regionId:$accountId:organization/$organizationId
ResetFabricOrganizationUserPasswordacs:baas:$regionId:$accountId:organization/$organizationId
DownloadFabricOrganizationSDKacs:baas:$regionId:$accountId:organization/$organizationId
DescribeFabricInvitationCodeacs:baas:$regionId:$accountId:consortium/$consortiumId

Contoh aturan RAM Hyperledger Fabric

Contoh 1: Berikan izin read-only untuk BaaS. Izin ini memungkinkan pengguna melihat status blockchain dan mengunduh SDK melalui Konsol atau API.

{
   "Statement": [{ 
       "Action": ["baas:Describe*","baas:DownloadFabricOrganizationSDK"],
       "Effect": "Allow",
       "Resource": "acs:baas:*:*:*"
   }],
   "Version": "1"
}
Contoh 2: Berikan izin untuk operasi manajemen chaincode, seperti mengunggah, menginstal, dan menginisialisasi chaincode. Izin ini memungkinkan pengguna mengelola semua chaincode melalui Konsol atau API.
{
  "Statement": [{
     "Action": "baas:*Chaincode",
     "Effect": "Allow",
     "Resource": ["acs:baas:*:*:chaincode/*","acs:baas:*:*:organization/*", "acs:baas:*:*:consortium/*","acs:baas:*:*:channel/*"]
  }],
  "Version": "1"
}

Contoh 3: Berikan izin detail halus kepada developer chaincode. Otorisasi ini biasanya memerlukan semua izin baca dan izin manajemen chaincode untuk organisasi tertentu. Sesuai prinsip hak istimewa minimal, pengguna dibatasi hanya untuk membuat chaincode pada konsorsium, organisasi, dan channel tertentu. Pengguna juga hanya dapat menginstal atau menginisialisasi chaincode pada organisasi tertentu. Ganti $consortiumId/$organizationId/$channelId dengan ID resource di BaaS.

{
 "Statement": [{
   "Action": ["baas:Describe*","baas:DownloadFabricOrganizationSDK"],
   "Effect": "Allow",
   "Resource": "acs:baas:*:*:*"
 },
 {
   "Action": "baas:*Chaincode",
   "Effect": "Allow",
   "Resource": ["acs:baas:*:*:chaincode/*","acs:baas:*:*:organization/$organizationId","acs:baas:*:*:consortium/$consortiumId","acs:baas:*:*:channel/$channelId"]
 }],
 "Version": "1"
}