全部产品
Search
文档中心

Function Compute:Peran terkait layanan dari Function Compute

更新时间:Jul 06, 2025

Layanan tepercaya Alibaba Cloud dapat mengasumsikan peran Manajemen Akses Sumber Daya (RAM) untuk mengakses layanan Alibaba Cloud lainnya. Peran RAM yang diasumsikan oleh layanan tepercaya diklasifikasikan menjadi peran layanan reguler dan peran terkait layanan. Topik ini menjelaskan peran terkait layanan Function Compute.

Ikhtisar

Peran terkait layanan AliyunServiceRoleForFC dari Function Compute digunakan untuk mengakses layanan Alibaba Cloud lainnya dan melakukan operasi. Function Compute 3.0 mendukung pengikatan AliyunServiceRoleForFC dan fungsi sebagai layanan (FaaS) untuk memberikan izin berdasarkan prinsip hak istimewa minimal.

Berikut adalah daftar peran terkait layanan Function Compute beserta kebijakan sistem yang dilampirkan:

  • Peran terkait layanan: AliyunServiceRoleForFC

  • Kebijakan sistem: AliyunServiceRolePolicyForFC

AliyunServiceRoleForFC

Peran AliyunServiceRoleForFC memiliki izin untuk mengakses layanan Alibaba Cloud tertentu seperti Virtual Private Cloud, Elastic Compute Service, Simple Log Service, dan Container Registry. Anda dapat menggunakan peran tersebut untuk mengimplementasikan fitur seperti menghubungkan fungsi ke VPC, mengunduh gambar, memulihkan sumber daya, dan mengekspor log.

Peran AliyunServiceRoleForFC dilampiri dengan kebijakan AliyunServiceRolePolicyForFC. Berikut adalah isi dari kebijakan tersebut:

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "vpc:DescribeVSwitchAttributes",
                "vpc:DescribeVpcAttribute"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ecs:CreateNetworkInterface",
                "ecs:DeleteNetworkInterface",
                "ecs:DescribeNetworkInterfaces",
                "ecs:CreateNetworkInterfacePermission",
                "ecs:DeleteNetworkInterfacePermission",
                "ecs:DescribeNetworkInterfacePermissions"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "cr:PullRepository",
                "cr:GetArtifactTag",
                "cr:GetAuthorizationToken",
                "cr:GetRepository",
                "cr:GetRepositoryTag",
                "cr:GetRepoTagManifest",
                "cr:GetRepositoryManifest",
                "cr:GetInstanceVpcEndpoint",
                "cr:GetInstance",
                "cr:GetNamespace",
                "cr:GetArtifactBuildRule",
                "cr:CreateArtifactBuildTask"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "fc:InvokeFunction",
                "eventbridge:PutEvents",
                "mq:PUB",
                "mq:OnsInstanceBaseInfo",
                "mns:SendMessage",
                "mns:PublishMessage",
                "fnf:ReportTaskSucceeded",
                "fnf:ReportTaskFailed"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "log:CreateProject",
                "log:CreateLogStore",
                "log:GetProject",
                "log:GetLogStore",
                "log:DeleteProject",
                "log:DeleteLogStore",
                "log:GetLogStoreLogs"
            ],
            "Resource": [
                "acs:log:*:*:project/aliyun-fc-*",
                "acs:log:*:*:project/*/logstore/function-log*"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "log:PostLogStoreLogs"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "ram:GetRole"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Effect": "Allow",
            "Action": "ram:DeleteServiceLinkedRole",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "fc.aliyuncs.com"
                }
            }
        }
    ]
}

Berikut adalah skenario di mana peran terkait layanan Function Compute diperlukan:

  • Konfigurasikan VPC, switch, atau elastic network interfaces (ENIs) untuk Function Compute guna meningkatkan keamanan data dan menerapkan komunikasi jaringan dalam VPC.

  • Akses repositori Container Registry untuk menarik gambar yang digunakan dalam pembuatan fungsi berbasis gambar. Gambar kontainer memungkinkan penyebaran fungsi secara fleksibel.

  • Konfigurasikan akses ke layanan pesan seperti ApsaraMQ dan EventBridge, serta gunakan Function Compute untuk memantau peristiwa dari sumber pesan. Saat pesan atau peristiwa baru dihasilkan, eksekusi fungsi langsung dipicu untuk menerapkan model komputasi berbasis peristiwa.

  • Konfigurasikan izin terkait Simple Log Service untuk mengaktifkan pengumpulan otomatis log eksekusi fungsi, memfasilitasi pencarian, analisis, dan visualisasi log. Ini membantu Anda menemukan dan menyelesaikan masalah dengan cepat.

Buat peran terkait layanan

Saat masuk ke konsol Function Compute 3.0, sistem akan memeriksa apakah peran terkait layanan AliyunServiceRoleForFC telah dibuat. Jika belum, muncul pesan yang menanyakan apakah ingin membuat peran terkait layanan. Setelah Anda mengonfirmasi pembuatan peran terkait layanan AliyunServiceRoleForFC dan melampirkan kebijakan AliyunServiceRolePolicyForFC, sistem akan membuat peran tersebut secara otomatis.

Setelah peran terkait layanan dibuat, Anda dapat melihat peran tersebut di halaman Peran di konsol RAM atau dengan memanggil operasi ListRoles di CLI atau alat lainnya. Anda juga dapat masuk kembali ke konsol Function Compute 3.0 untuk memverifikasi apakah peran berhasil dibuat. Jika masuk berhasil, peran terkait layanan telah dibuat.

Hapus peran terkait layanan

Anda dapat menghapus peran terkait layanan di konsol RAM. Setelah peran terkait layanan dihapus, konsol Function Compute 3.0 tidak dapat digunakan sesuai harapan. Berhati-hatilah saat melakukan operasi ini.

  1. Masuk ke konsol RAM sebagai pengguna RAM dengan hak administratif.

  2. Di panel navigasi sebelah kiri, pilih Identities > Roles.

  3. Di halaman Roles, temukan pengguna RAM yang ingin dihapus dan klik Delete Role di kolom Actions.

  4. Di kotak dialog Delete Role, masukkan nama peran RAM yang ingin dihapus dan klik Delete Role.

    Saat menghapus peran terkait layanan, RAM memeriksa apakah peran tersebut sedang digunakan oleh sumber daya cloud. Jika peran sedang digunakan oleh satu atau lebih sumber daya cloud, penghapusan gagal. Anda dapat memeriksa sumber daya cloud yang menggunakan peran berdasarkan pesan yang ditampilkan. Jika tidak lagi membutuhkan sumber daya cloud tersebut, hapus sumber daya tersebut sebelum menghapus peran terkait layanan.

Izin yang diperlukan untuk pengguna RAM menggunakan peran terkait layanan

Jika ingin membuat atau menghapus peran terkait layanan sebagai pengguna RAM, Anda harus menggunakan akun Alibaba Cloud untuk memberikan pengguna RAM izin ram:CreateServiceLinkRole dan ram:DeleteServiceLinkedRole, atau melampirkan kebijakan AliyunRAMFullAccess ke pengguna RAM.

Potongan kode berikut menunjukkan contoh kebijakan kustom yang mengizinkan pengguna RAM membuat dan menghapus peran terkait layanan untuk Function Compute.

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ram:CreateServiceLinkedRole",
                "ram:DeleteServiceLinkedRole"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "ram:ServiceName": "fc.aliyuncs.com"
                }
            }
        }
    ]
}