Peran terkait layanan AI Gateway adalah peran RAM yang telah ditentukan sebelumnya dan memberikan izin kepada AI Gateway untuk mengakses layanan Alibaba Cloud lainnya atas nama Anda.
Kasus penggunaan
-
AliyunServiceRoleForNativeApiGw: Saat AI Gateway perlu mengakses sumber daya layanan cloud lainnya, seperti Virtual Private Cloud (VPC), Container Service for Kubernetes (ACK), Function Compute (FC), Enterprise Distributed Application Service (EDAS), Microservices Engine (MSE), Server Load Balancer (SLB), Network Load Balancer (NLB), Elastic Compute Service (ECS), dan Application Real-Time Monitoring Service (ARMS), AI Gateway menggunakan peran terkait layanan yang dibuat secara otomatis bernama AliyunServiceRoleForNativeApiGw untuk memperoleh izin akses yang diperlukan.
-
AliyunServiceRoleForNativeApiGwInvokeFC: Saat AI Gateway perlu memanggil Function Compute (FC), AI Gateway menggunakan peran terkait layanan yang dibuat secara otomatis bernama AliyunServiceRoleForNativeApiGwInvokeFC untuk mengaktifkan fitur gerbang.
-
AliyunServiceRoleForNativeApiGwInvokeKMS: Saat Cloud-native API Gateway perlu memanggil Key Management Service (KMS), AI Gateway menggunakan peran terkait layanan yang dibuat secara otomatis bernama
AliyunServiceRoleForNativeApiGwInvokeKMSuntuk memperoleh izin akses.
Izin untuk Pengguna RAM
Agar Pengguna RAM dapat membuat atau menghapus peran terkait layanan, administrator harus memberikan izin administrator (AliyunNativeApiGwFullAccess) kepada Pengguna RAM tersebut atau menambahkan izin berikut ke dalam pernyataan Action pada kebijakan izin kustom:
-
Membuat peran terkait layanan:
ram:CreateServiceLinkedRole -
Menghapus peran terkait layanan:
ram:DeleteServiceLinkedRole
Untuk informasi selengkapnya tentang cara memberikan izin, lihat Izin yang diperlukan untuk mengelola peran terkait layanan.
Izin
AliyunServiceRoleForNativeApiGw
Izin berikut diberikan kepada peran terkait layanan untuk AI Gateway (AliyunServiceRoleForNativeApiGw):
VPC
{
"Effect": "Allow",
"Action": [
"vpc:AllocateEipAddress",
"vpc:AllocateEipAddressPro",
"vpc:DescribeEipAddresses",
"vpc:AssociateEipAddress",
"vpc:UnassociateEipAddress",
"vpc:ReleaseEipAddress",
"vpc:ModifyEipAddressAttribute",
"vpc:ModifyBypassToaAttribute",
"vpc:AddCommonBandwidthPackageIp",
"vpc:RemoveCommonBandwidthPackageIp",
"vpc:TagResources",
"vpc:DescribeVSwitches",
"vpc:DescribeVSwitchAttributes",
"vpc:DescribeVpcs",
"vpc:CreateVSwitch",
"vpc:DescribeVpcAttribute",
"vpc:DescribeVRouters",
"vpc:DescribeRouteTables",
"vpc:DescribeRouteEntryList"
],
"Resource": "*"
}
ACK
{
"Effect": "Allow",
"Action": [
"cs:DescribeClusterDetail",
"cs:DescribeClusterInnerServiceKubeconfig",
"cs:RevokeClusterInnerServiceKubeconfig",
"cs:GetUserConfig",
"cs:DescribeClusterUserKubeconfig",
"cs:GetClusterById",
"cs:GetClustersByUid",
"cs:DescribeClustersV1",
"cs:ListClusters",
"cs:GetClusters",
"cs:DescribeClusterNodePools"
],
"Resource": "*"
}
FC
{
"Effect": "Allow",
"Action": [
"fc:ListAliases",
"fc:ListServices",
"fc:ListServiceVersions",
"fc:ListFunctions",
"fc:ListFunctionVersions",
"fc:ListTriggers"
],
"Resource": "*"
}
EDAS
{
"Effect": "Allow",
"Action": [
"edas:ReadNamespace",
"edas:ReadService",
"edas:ListUserDefineRegion"
],
"Resource": "*"
}
MSE
{
"Effect": "Allow",
"Action": [
"mse:ListAnsServices",
"mse:ListEngineNamespaces",
"mse:ListClusters",
"mse:QueryConfig"
],
"Resource": "*"
}
SLB
{
"Effect": "Allow",
"Action": [
"slb:SetLoadBalancerName",
"slb:CreateLoadBalancer",
"slb:AddBackendServers",
"slb:SetBackendServers",
"slb:RemoveBackendServers",
"slb:CreateLoadBalancerTCPListener",
"slb:DescribeLoadBalancerTCPListenerAttribute",
"slb:SetLoadBalancerTCPListenerAttribute",
"slb:CreateLoadBalancerHTTPListener",
"slb:DescribeLoadBalancerHTTPListenerAttribute",
"slb:SetLoadBalancerHTTPListenerAttribute",
"slb:CreateLoadBalancerHTTPSListener",
"slb:DescribeLoadBalancerHTTPSListenerAttribute",
"slb:SetLoadBalancerHTTPSListenerAttribute",
"slb:StartLoadBalancerListener",
"slb:StopLoadBalancerListener",
"slb:DeleteLoadBalancerListener",
"slb:DescribeLoadBalancers",
"slb:DescribeLoadBalancerAttribute",
"slb:DescribeHealthStatus",
"slb:CreateLoadBalancerForCloudService",
"slb:DeleteLoadBalancer",
"slb:ModifyLoadBalancerInternetSpec",
"slb:RemoveTags",
"slb:AddTags",
"slb:SetLoadBalancerUDPListenerAttribute",
"slb:CreateLoadBalancerUDPListener",
"slb:CreateVServerGroup",
"slb:DeleteVServerGroup",
"slb:SetVServerGroupAttribute",
"slb:ModifyVServerGroupBackendServers",
"slb:AddVServerGroupBackendServers",
"slb:ModifyLoadBalancerInstanceSpec",
"slb:ModifyLoadBalancerInternetSpec",
"slb:RemoveVServerGroupBackendServers",
"slb:SetLoadBalancerModificationProtection",
"slb:SetLoadBalancerDeleteProtection",
"slb:DescribeLoadBalancerUDPListenerAttribute ",
"slb:DescribeTags",
"slb:DescribeVServerGroups",
"slb:DescribeVServerGroupAttribute",
"slb:DescribeLoadBalancerListeners",
"slb:ListTagResources",
"slb:TagResources",
"slb:UntagResources"
],
"Resource": "*"
}
NLB
{
"Effect": "Allow",
"Action": [
"nlb:TagResources",
"nlb:UnTagResources",
"nlb:ListTagResources",
"nlb:CreateLoadBalancer",
"nlb:DeleteLoadBalancer",
"nlb:GetLoadBalancerAttribute",
"nlb:ListLoadBalancers",
"nlb:UpdateLoadBalancerAttribute",
"nlb:UpdateLoadBalancerAddressTypeConfig",
"nlb:UpdateLoadBalancerZones",
"nlb:CreateListener",
"nlb:DeleteListener",
"nlb:ListListeners",
"nlb:UpdateListenerAttribute",
"nlb:StopListener",
"nlb:StartListener",
"nlb:GetListenerAttribute",
"nlb:GetListenerHealthStatus",
"nlb:CreateServerGroup",
"nlb:DeleteServerGroup",
"nlb:UpdateServerGroupAttribute",
"nlb:AddServersToServerGroup",
"nlb:RemoveServersFromServerGroup",
"nlb:UpdateServerGroupServersAttribute",
"nlb:ListServerGroups",
"nlb:ListServerGroupServers",
"nlb:LoadBalancerLeaveSecurityGroup",
"nlb:LoadBalancerJoinSecurityGroup",
"nlb:GetJobStatus",
"nlb:UpdateLoadBalancerProtection"
],
"Resource": "*"
}
ECS
{
"Effect": "Allow",
"Action": [
"ecs:CreateSecurityGroup",
"ecs:AuthorizeSecurityGroup",
"ecs:AuthorizeSecurityGroupEgress",
"ecs:RevokeSecurityGroup",
"ecs:RevokeSecurityGroupEgress",
"ecs:DeleteSecurityGroup",
"ecs:JoinSecurityGroup",
"ecs:LeaveSecurityGroup",
"ecs:DescribeSecurityGroups",
"ecs:DescribeInstances",
"ecs:CreateNetworkInterface",
"ecs:DeleteNetworkInterface",
"ecs:DescribeNetworkInterfaces",
"ecs:CreateNetworkInterfacePermission",
"ecs:DescribeNetworkInterfacePermissions",
"ecs:DeleteNetworkInterfacePermission",
"ecs:DescribeSecurityGroupAttribute",
"ecs:AddTags",
"ecs:DescribeEipAddresses",
"ecs:DescribeNetworkInterfaceAttribute",
"ecs:ModifyNetworkInterfaceAttribute",
"ecs:AssignPrivateIpAddresses",
"ecs:UnassignPrivateIpAddresses",
"ecs:AssignIpv6Addresses",
"ecs:UnassignIpv6Addresses",
"ecs:AttachNetworkInterface",
"ecs:DetachNetworkInterface",
"ecs:ListTagResources"
],
"Resource": "*"
}
ARMS
{
"Effect": "Allow",
"Action": [
"arms:OpenArmsService",
"arms:GetAlertRules",
"arms:ReportCustomIncidents",
"arms:AddPrometheusInstance",
"arms:GetAuthToken",
"arms:GetClusterAllUrl",
"arms:OpenArmsServiceSecondVersion",
"arms:CheckServiceStatus",
"arms:OpenVCluster",
"arms:GetPrometheusApiToken",
"arms:ListDashboards",
"arms:GetExploreUrl",
"arms:CreateDefaultCloudProductPrometheusAlertRule",
"arms:ListNotificationPolicies",
"arms:ListDispatchRule",
"arms:CreateDispatchRule",
"arms:CreateOrUpdateNotificationPolicy",
"arms:DescribeContactGroups",
"arms:SearchContactGroup",
"arms:CreatePrometheusAlertRule"
],
"Resource": "*"
}
AliyunServiceRoleForNativeApiGwInvokeFC
Izin berikut diberikan kepada peran terkait layanan untuk AI Gateway (AliyunServiceRoleForNativeApiGwInvokeFC):
{
"Effect": "Allow",
"Action": "fc:InvokeFunction",
"Resource": "*"
}
AliyunServiceRoleForNativeApiGwInvokeKMS
Izin berikut diberikan kepada peran terkait layanan untuk AI Gateway (AliyunServiceRoleForNativeApiGwInvokeKMS):
{
"Effect": "Allow",
"Action": [
"kms:ListKmsInstances",
"kms:ListKeys",
"kms:GenerateDataKey",
"kms:Decrypt",
"kms:CreateSecret",
"kms:DeleteSecret",
"kms:UpdateSecret",
"kms:DescribeSecret",
"kms:GetSecretValue",
"kms:PutSecretValue",
"kms:TagResource",
"kms:UntagResource"
],
"Resource": "*"
}
Menampilkan peran terkait layanan
Setelah peran terkait layanan dibuat, Anda dapat membuka halaman Roles di Konsol RAM dan mencari nama peran tersebut, misalnya AliyunServiceRoleForNativeApiGw atau AliyunServiceRoleForNativeApiGwInvokeFC, untuk melihat informasi berikut:
-
Informasi dasar
Pada halaman detail peran, buka bagian Basic Information untuk melihat nama, waktu pembuatan, ARN, dan deskripsi peran tersebut.
-
Kebijakan izin
Pada halaman detail peran AliyunServiceRoleForNativeApiGw atau AliyunServiceRoleForNativeApiGwInvokeFC, klik tab Permissions. Kemudian, klik nama kebijakan untuk melihat isi kebijakan dan sumber daya cloud yang dapat diakses oleh peran tersebut.
-
Kebijakan kepercayaan
Pada halaman detail peran AliyunServiceRoleForNativeApiGw atau AliyunServiceRoleForNativeApiGwInvokeFC, klik tab Trust Policy Management untuk melihat kebijakan kepercayaan. Kebijakan kepercayaan menentukan entitas tepercaya yang dapat mengasumsikan peran RAM. Entitas tepercaya dari peran terkait layanan adalah layanan cloud, yang dapat Anda identifikasi pada bidang
Servicedalam kebijakan kepercayaan.
Untuk informasi selengkapnya tentang cara menampilkan peran RAM, lihat Menampilkan informasi tentang peran RAM.
Menghapus peran terkait layanan
Jika Anda tidak lagi menggunakan AI Gateway, Anda dapat menghapus secara manual peran terkait layanan tersebut di Konsol RAM.
-
Masuk ke Konsol RAM menggunakan Akun Alibaba Cloud Anda. Di panel navigasi sebelah kiri, pilih .
-
Pada halaman Roles, masukkan nama peran yang ingin Anda hapus di kotak pencarian, misalnya
AliyunServiceRoleForNativeApiGw. -
Temukan peran yang dituju dalam hasil pencarian, lalu klik Delete Role pada kolom Actions.
-
Pada kotak dialog konfirmasi, masukkan nama peran untuk verifikasi, lalu klik Delete Role.
Setelah Anda menghapus peran terkait layanan untuk Cloud-native API Gateway, fitur-fitur yang bergantung pada peran tersebut tidak akan berfungsi dengan benar lagi. Lakukan tindakan ini dengan hati-hati.
FAQ
Mengapa Pengguna RAM tidak dapat membuat peran AliyunServiceRoleForNativeApiGw
Membuat atau menghapus peran AliyunServiceRoleForNativeApiGw memerlukan izin tertentu. Jika Pengguna RAM tidak dapat membuat peran tersebut secara otomatis, administrator harus menyambungkan kebijakan izin berikut ke Pengguna RAM tersebut.
{
"Statement": [
{
"Action": [
"ram:CreateServiceLinkedRole"
],
"Resource": "acs:ram:*:ID akun Alibaba Cloud:role/*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ram:ServiceName": [
"nativeapigw.aliyuncs.com"
]
}
}
}
],
"Version": "1"
}
Ganti ID akun Alibaba Cloud dengan ID Akun Alibaba Cloud Anda.
Mengapa Pengguna RAM tidak dapat membuat peran AliyunServiceRoleForNativeApiGwInvokeFC
Membuat atau menghapus peran AliyunServiceRoleForNativeApiGwInvokeFC memerlukan izin tertentu. Jika Pengguna RAM tidak dapat membuat peran tersebut secara otomatis, administrator harus menyambungkan kebijakan izin berikut ke Pengguna RAM tersebut.
{
"Statement": [
{
"Action": [
"ram:CreateServiceLinkedRole"
],
"Resource": "acs:ram:*:ID akun Alibaba Cloud:role/*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"ram:ServiceName": [
"invokefc.nativeapigw.aliyuncs.com"
]
}
}
}
],
"Version": "1"
}
Ganti ID akun Alibaba Cloud dengan ID Akun Alibaba Cloud Anda.
Referensi
Untuk informasi selengkapnya tentang peran terkait layanan, lihat Peran terkait layanan.