Tüm Ürünler
Search
Belge Merkezi

Function Compute:İlkeler ve örnek ilkeler

Son Güncelleme:Oct 08, 2026

Function Compute, izinleri yönetmek için Resource Access Management (RAM) hizmetini kullanır. RAM sayesinde AccessKey çiftlerinizi diğer kullanıcılarla paylaşmanıza gerek kalmaz. Bunun yerine, kullanıcılara yalnızca gereken en az düzeyde izin verebilirsiniz. Bir AccessKey çifti; bir AccessKey ID ve bir AccessKey secret içerir. Bu konu, Function Compute için sistem ilkeleri ve özel ilkeler dahil olmak üzere ilkeleri açıklar. Ayrıca örnek özel ilkeler sunar.

İlke türleri

RAM'de ilke, İlke yapısı ve sözdizimi temel alınarak tanımlanan bir izin kümesidir. Bir ilke, yetkili kaynak kümesini, işlem kümesini ve yetkilendirme koşullarını kesin olarak belirler. Function Compute ilkeleri aşağıdaki türleri içerir:

  • Sistem ilkeleri: Sistem ilkeleri Alibaba Cloud tarafından oluşturulur ve güncellenir. Sistem ilkelerini kullanabilirsiniz ancak bunları değiştiremezsiniz.

  • Özel ilkeler: Özel ilkeleri oluşturabilir, güncelleyebilir ve silebilirsiniz. Özel ilkelerin sürümlerini kendiniz yönetmeniz gerekir.

Sistem ilkeleri

Bir RAM kullanıcısı olarak Function Compute konsoluna ilk kez giriş yaptığınızda, Alibaba Cloud hesabınızı kullanarak Function Compute ve diğer Alibaba Cloud hizmetlerinin sistem ilkelerini ilgili RAM kullanıcısına eklemeniz gerekir. RAM kullanıcısı olarak yalnızca sistem ilkeleri eklendikten sonra Function Compute dahil olmak üzere Alibaba Cloud hizmetlerine erişebilirsiniz.

Aşağıdaki öğeler farklı türlerdeki sistem ilkelerini listeler:

  • Function Compute sistem ilkeleri


    İlke adı


    Açıklama


    AliyunFCReadOnlyAccess


    Tüm Function Compute kaynaklarında salt okunur izinleri sağlar.


    AliyunFCInvocationAccess


    İşlevleri çağırma izinlerini sağlar.


    AliyunFCFullAccess


    Tüm Function Compute kaynaklarını yönetme izinlerini sağlar.

    Not

    AliyunFCFullAccess ilkesi, AliyunFCInvocationAccess ve AliyunFCReadOnlyAccess ilkelerinin izinlerini içerir. AliyunFCFullAccess ilkesini bir RAM kullanıcısına ekledikten sonra, söz konusu kullanıcıya AliyunFCInvocationAccess veya AliyunFCReadOnlyAccess ilkesini ayrıca eklemenize gerek yoktur.

  • Diğer Alibaba Cloud hizmetleri için sistem ilkeleri

    Alibaba Cloud hizmeti

    Sistem ilkesi

    Simple Log Service

    • AliyunLogReadOnlyAccess: Simple Log Service kaynaklarında salt okunur izinleri sağlar.

    • AliyunLogFullAccess: Simple Log Service kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının Simple Log Service hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunLogReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.

    Object Storage Service (OSS)

    • AliyunOSSReadOnlyAccess: OSS kaynaklarında salt okunur izinleri sağlar.

    • AliyunOSSFullAccess: OSS kaynaklarını yönetme izinlerini sağlar.

    CloudMonitor

    AliyunCloudMonitorReadOnlyAccess: CloudMonitor kaynaklarında salt okunur izinleri sağlar.

    Certificate Management Service

    AliyunYundunCertReadOnlyAccess: Certificate Management Service kaynaklarında salt okunur izinleri sağlar.

    Virtual Private Cloud (VPC)

    AliyunVPCReadOnlyAccess: VPC kaynaklarında salt okunur izinleri sağlar.

    Elastic Compute Service (ECS)

    AliyunECSReadOnlyAccess: ECS kaynaklarında salt okunur izinleri sağlar.

    RAM

    • AliyunRAMReadOnlyAccess: Kullanıcıları, grupları ve yetkilendirme bilgilerini görüntüleme izinleri dahil olmak üzere RAM kaynaklarında salt okunur izinleri sağlar.

    • AliyunRAMFullAccess: Kullanıcıları yönetme ve izin atama izinleri dahil olmak üzere RAM kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısına yalnızca AliyunRAMReadOnlyAccess ilkesini eklerseniz, bu kullanıcıyla konsolda yalnızca rol listesini görüntüleyebilirsiniz. RAM kullanıcısı olarak başka işlemler yapmanız gerekiyorsa, ilgili kullanıcıya AliyunRAMFullAccess ilkesini eklemeniz gerekir.

    Application Real-Time Monitoring Service (ARMS)

    • AliyunARMSReadOnlyAccess: ARMS kaynaklarında salt okunur izinleri sağlar.

    • AliyunARMSFullAccess: ARMS kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının ARMS hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunARMSReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.

    Simple Message Queue (formerly MNS)

    • AliyunMNSReadOnlyAccess: Simple Message Queue (formerly MNS) kaynaklarında salt okunur izinleri sağlar.

    • AliyunMNSFullAccess: Simple Message Queue (formerly MNS) kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının Simple Message Queue (formerly MNS) hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunMNSReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.Simple Message Queue (formerly MNS)

    EventBridge

    • AliyunEventBridgeReadOnlyAccess: EventBridge kaynaklarında salt okunur izinleri sağlar.

    • AliyunEventBridgeFullAccess: EventBridge kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının EventBridge hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunEventBridgeReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.

    ApsaraMQ for RocketMQ

    • AliyunMQReadOnlyAccess: ApsaraMQ for RocketMQ kaynaklarında salt okunur izinleri sağlar.

    • AliyunMQFullAccess: ApsaraMQ for RocketMQ kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının ApsaraMQ for RocketMQ hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunMQReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.

    Container Registry

    • AliyunContainerRegistryReadOnlyAccess: Container Registry kaynaklarında salt okunur izinleri sağlar.

    • AliyunContainerRegistryFullAccess: Container Registry kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının Container Registry hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunContainerRegistryReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.

    File Storage NAS (NAS)

    • AliyunNASReadOnlyAccess: NAS kaynaklarında salt okunur izinleri sağlar.

    • AliyunNASFullAccess: NAS kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının NAS hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunNASReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.

    ApsaraDB RDS

    • AliyunRDSReadOnlyAccess: ApsaraDB RDS kaynaklarında salt okunur izinleri sağlar.

    • AliyunRDSFullAccess: ApsaraDB RDS kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının ApsaraDB RDS hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunRDSReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.

    Alibaba Cloud DevOps

    • AliyunRDCReadOnlyAccess: Apsara DevOps RDC kaynaklarında salt okunur izinleri sağlar.

    • AliyunRDCFullAccess: Apsara DevOps RDC kaynaklarını yönetme izinlerini sağlar.

    Not

    Bir RAM kullanıcısının ApsaraDB RDS hizmetine erişmesi için, en az ayrıcalık ilkesi gereği yalnızca AliyunRDCReadOnlyAccess ilkesini ilgili RAM kullanıcısına eklemeniz yeterlidir.

Önemli

Bir tetikleyiciyle ilgili ilkeyi (örneğin AliyunOSSFullAccess) bir RAM kullanıcısına Alibaba Cloud hesabınızla ekledikten sonra, RAM kullanıcısı olarak tetikleyicileri güncelleyemiyorsanız, Alibaba Cloud hesabınızı kullanarak aşağıdaki özel ilkeyi ilgili RAM kullanıcısına eklemeniz gerekir. Özel ilke eklendiğinde, RAM kullanıcısı olarak OSS olay tetikleyicilerini güncelleyebilirsiniz.

 {
        "Statement": [
            {
                "Action": [
                    "ram:PassRole"
                ],
                "Effect": "Allow",
                "Resource": "*"
            }
        ],
        "Version": "1"
    }

Özel ilkeler

Function Compute, sistem ilkelerine ek olarak RAM kullanıcılarına ayrıntılı izinler vermenizi sağlayan özel ilkeleri destekler. İlkeler hakkında daha fazla bilgi için bkz. İzin ilkesi öğeleri.

İşlem

Kaynak

Açıklama

fc:GetAsyncTask

acs:fc:{region}:{uid}:functions/{functionName}/async-tasks/{taskId}

Eşzamansız görevler

fc:StopAsyncTask

acs:fc:{region}:{uid}:functions/{functionName}/async-tasks/{taskId}

fc:ListAsyncTasks

acs:fc:{region}:{uid}:functions/{functionName}/async-tasks/*

fc:ListFunctionAsyncInvokeConfigs

acs:fc:{region}:{uid}:async-invoke-configs/* acs:fc:{region}:{uid}:functions/{functionName}

Eşzamansız çağırma yapılandırmaları

fc:ListConcurrencyConfigs

acs:fc:{region}:{uid}:concurrency-configs/* acs:fc:{region}:{uid}:functions/{functionName}

Eşzamanlılık yapılandırmaları

fc:ListCustomDomains

acs:fc:{region}:{uid}:custom-domains/*

Tüm özel alan adları

fc:GetCustomDomain

acs:fc:{region}:{uid}:custom-domains/{domainName}

Belirtilen özel alan adları

fc:DeleteCustomDomain

fc:UpdateCustomDomain

fc:CreateCustomDomain

fc:ListFunctions

acs:fc:{region}:{uid}:functions/*

Tüm işlev kaynakları

fc:DeleteConcurrencyConfig

acs:fc:{region}:{uid}:functions/{functionName}

fc:PutConcurrencyConfig

acs:fc:{region}:{uid}:functions/{functionName}

fc:DeleteFunction

acs:fc:{region}:{uid}:functions/{functionName}

fc:UpdateFunction

acs:fc:{region}:{uid}:functions/{functionName}

fc:CreateFunction

acs:fc:{region}:{uid}:functions/{functionName}

fc:GetConcurrencyConfig

acs:fc:{region}:{uid}:functions/{functionName}

fc:GetFunction

acs:fc:{region}:{uid}:functions/{functionName}

fc:ListAliases

acs:fc:{region}:{uid}:functions/{functionName}/aliases/*

Tüm takma adlar

fc:CreateAlias

acs:fc:{region}:{uid}:functions/{functionName}/aliases/{aliasName}

Belirtilen takma adlar

fc:UpdateAlias

acs:fc:{region}:{uid}:functions/{functionName}/aliases/{aliasName}

fc:GetAlias

acs:fc:{region}:{uid}:functions/{functionName}/aliases/{aliasName}

fc:DeleteAlias

acs:fc:{region}:{uid}:functions/{functionName}/aliases/{aliasName}

fc:ListInstances

acs:fc:{region}:{uid}:functions/{functionName}/instances/*

Örnek bilgileri

fc:ListTriggers

acs:fc:{region}:{uid}:functions/{functionName}/triggers/*

Belirtilen işlev altındaki tüm tetikleyici kaynakları

fc:CreateTrigger

acs:fc:{region}:{uid}:functions/{functionName}/triggers/{triggerName}

Belirtilen işlev altındaki belirli tetikleyici kaynakları

fc:UpdateTrigger

acs:fc:{region}:{uid}:functions/{functionName}/triggers/{triggerName}

fc:GetTrigger

acs:fc:{region}:{uid}:functions/{functionName}/triggers/{triggerName}

fc:DeleteTrigger

acs:fc:{region}:{uid}:functions/{functionName}/triggers/{triggerName}

fc:PublishFunctionVersion

acs:fc:{region}:{uid}:functions/{functionName}/versions

Tüm sürümler

fc:ListFunctionVersions

acs:fc:{region}:{uid}:functions/{functionName}/versions/*

fc:DeleteFunctionVersion

acs:fc:{region}:{uid}:functions/{functionName}/versions/{versionId}

Belirtilen sürümler

fc:ListVpcBindings

acs:fc:{region}:{uid}:functions/{functionName}/vpc-bindings/*

VPC yapılandırmaları

fc:CreateVpcBinding

acs:fc:{region}:{uid}:functions/{functionName}/vpc-bindings/*

fc:DeleteVpcBinding

acs:fc:{region}:{uid}:functions/{functionName}/vpc-bindings/{vpcId}

fc:GetFunctionCode

acs:fc:{region}:{uid}:functions/{functionName} acs:fc:{region}:{uid}:functions/{functionName}/{qualifier}

Tüm işlev kodları

fc:GetFunctionAsyncInvokeConfig

acs:fc:{region}:{uid}:functions/{functionName} acs:fc:{region}:{uid}:functions/{functionName}/{qualifier}

Tüm işlev kaynakları

fc:DeleteProvisionConfig

acs:fc:{region}:{uid}:functions/{functionName} acs:fc:{region}:{uid}:functions/{functionName}/{qualifier}

fc:PutProvisionConfig

acs:fc:{region}:{uid}:functions/{functionName} acs:fc:{region}:{uid}:functions/{functionName}/{qualifier}

fc:InvokeFunction

acs:fc:{region}:{uid}:functions/{functionName} acs:fc:{region}:{uid}:functions/{functionName}/{qualifier}

fc:PutFunctionAsyncInvokeConfig

acs:fc:{region}:{uid}:functions/{functionName} acs:fc:{region}:{uid}:functions/{functionName}/{qualifier}

fc:GetProvisionConfig

acs:fc:{region}:{uid}:functions/{functionName} acs:fc:{region}:{uid}:functions/{functionName}/{qualifier}

fc:DeleteFunctionAsyncInvokeConfig

acs:fc:{region}:{uid}:functions/{functionName} acs:fc:{region}:{uid}:functions/{functionName}/{qualifier}

fc:GetLayerVersionByArn

acs:fc:{region}:{uid}:layerarn/{arn}

Tüm katmanlar

fc:ListLayers

acs:fc:{region}:{uid}:layers/*

fc:PutLayerACL

acs:fc:{region}:{uid}:layers/{layerName}

fc:ListLayerVersions

acs:fc:{region}:{uid}:layers/{layerName}/versions/*

fc:CreateLayerVersion

acs:fc:{region}:{uid}:layers/{layerName}/versions/*

fc:DeleteLayerVersion

acs:fc:{region}:{uid}:layers/{layerName}/versions/{version}

fc:GetLayerVersion

acs:fc:{region}:{uid}:layers/{layerName}/versions/{version}

fc:ListProvisionConfigs

acs:fc:{region}:{uid}:provision-configs/* acs:fc:{region}:{uid}:functions/{functionName}

Sağlanan örnek yapılandırmaları

Önceki özel ilkeyi kullanarak China (Hangzhou) bölgesindeki demo işlevini çağırma izinlerini yapılandırabilirsiniz. Aşağıdaki kod parçası ayrıntıları gösterir:

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "fc:InvokeFunction"
            ],
            "Resource": "acs:fc:cn-hangzhou:*:functions/demo",
            "Effect": "Allow"
        }
    ]
}

Örnek ilkeler

Hizmet oluşturma ve sorgulama ile işlev oluşturma ve çağırma için özel ilke

{
	"Version": "1",
	"Statement": [{
			"Action": [
				"fc:CreateFunction",
				"fc:GetFunction",
				"fc:InvokeFunction"
			],
			"Resource": "*",
			"Effect": "Allow"
		},
		{
			"Action": [
				"ram:PassRole"
			],
			"Effect": "Allow",
			"Resource": "*"
		}
	]
}

Günlüklere erişim için özel ilke

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "log:ListProject",
                "log:ListLogStore"
            ],
            "Resource": "acs:log:*:*:project/*"
        }
    ]
}

OSS olay tetikleyicilerine erişim için özel ilke

{
  "Statement": [
    {
      "Action": [
        "oss:ListBucket",
        "oss:GetBucketEventNotification",
        "oss:PutBucketEventNotification",
        "oss:DeleteBucketEventNotification"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ],
  "Version": "1"
}

İnternete erişebilen hizmetlerin oluşturulmasını yasaklama için özel ilke

{
  "Version": "1",
  "Statement": [
    {
      "Action": "fc:UpdateFunction",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "fc:EnableServiceInternetAccess": "true"
        }
      }
    },
    {
      "Action": "fc:CreateFunction",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringNotEquals": {
          "fc:EnableServiceInternetAccess": "false"
        }
      }
    }
  ]
}

Simple Log Service hizmetine erişmesine izin verilmeyen hizmetlerin oluşturulmasını yasaklama için özel ilke

{
  "Version": "1",
  "Statement": [
    {
      "Action": "fc:UpdateFunction",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "fc:EnableServiceSLSLogging": "false"
        }
      }
    },
    {
      "Action": "fc:CreateFunction",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringNotEquals": {
          "fc:EnableServiceSLSLogging": "true"
        }
      }
    }
  ]
}

İnternet üzerinden erişilebilen tetikleyicilerin oluşturulmasını yasaklama için özel ilke

{
  "Version": "1",
  "Statement": [
    {
      "Action": "fc:UpdateTrigger",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "fc:EnableHTTPTriggerInternet": "true"
        }
      }
    },
    {
      "Action": "fc:CreateTrigger",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "fc:EnableHTTPTriggerInternet": "true"
        }
      }
    }
  ]
}

Bu ilke, kullanıcıların CreateTrigger ve UpdateTrigger işlemlerinde disableURLInternet parametresini false olarak ayarlamasını engeller. Bu parametrenin değeri yalnızca varsayılan genel alan adlarının desteklenmediğini belirten true olarak ayarlanabilir. Bu kısıtlama yalnızca HTTP tetikleyicileri için geçerlidir. Daha fazla bilgi için bkz. HTTPTriggerConfig.

Bu durumda, disableURLInternet=false ayarladığınızda 403 AccessDenied hatası alırsınız. Aşağıdaki kod bir örnek sunar:

{
  "statusCode":403,
  "Code":"AccessDenied",
  "Message":"the caller is not authorized to perform 'fc:CreateTrigger' on resource 'acs:fc:xx:xx:functions/xx/triggers/xx' with condition '[fc:EnableHTTPTriggerInternet=true]'"
}

Anonim modda erişilebilen tetikleyicilerin oluşturulmasını yasaklama için özel ilke

{
  "Version": "1",
  "Statement": [
    {
      "Action": "fc:UpdateTrigger",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "fc:EnableHTTPTriggerAnonymous": "true"
        }
      }
    },
    {
      "Action": "fc:CreateTrigger",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "fc:EnableHTTPTriggerAnonymous": "true"
        }
      }
    }
  ]
}

Bu ilke, kullanıcıların CreateTrigger ve UpdateTrigger işlemlerinde authType parametresini anonymous olarak ayarlamasını engeller. Bu parametrenin değeri yalnızca kimlik doğrulaması gerektiğini belirten function olarak ayarlanabilir. Bu kısıtlama yalnızca HTTP tetikleyicileri için geçerlidir. Daha fazla bilgi için bkz. HTTPTriggerConfig.

Bu durumda, authType=anonymous ayarladığınızda 403 AccessDenied hatası alırsınız. Aşağıdaki kod bir örnek sunar:

{
  "statusCode":403,
  "Code":"AccessDenied",
  "Message":"the caller is not authorized to perform 'fc:CreateTrigger' on resource 'acs:fc:xx:xx:functions/xx/triggers/xx' with condition '[fc:EnableHTTPTriggerAnonymous=true]'"
}

HTTP isteklerine izin veren özel alan adlarının oluşturulmasını yasaklama için özel ilke

{
  "Version": "1",
  "Statement": [
    {
      "Action": "fc:CreateCustomDomain",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "fc:EnableCustomDomainHTTP": "true"
        }
      }
    },
    {
      "Action": "fc:UpdateCustomDomain",
      "Effect": "Deny",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "fc:EnableCustomDomainHTTP": "true"
        }
      }
    }
  ]
}

Bu ilke, kullanıcıların CreateCustomDomain ve UpdateCustomDomain işlemlerinde protocol parametresini HTTP veya HTTP,HTTPS olarak ayarlamasını engeller. Bu parametreyi yalnızca HTTPS olarak ayarlayabilirsiniz.

Bir özel alan adı için HTTP protokolünü etkinleştirmeye çalışırsanız 403 AccessDenied hatası alırsınız. Aşağıdaki kod bir örnek sunar:

{
  "statusCode":403,
  "Code":"AccessDenied",
  "Message":"the caller is not authorized to perform 'fc:CreateCustomDomain' on resource 'acs:fc:xxx:xxx:custom-domains/xxx' with condition '[fc:EnableCustomDomainHTTP=true]'"
}