Tüm Ürünler
Search
Belge Merkezi

Resource Access Management:Permission policy elements

Son Güncelleme:Oct 03, 2026

RAM'de belirli izinleri tanımlamak için izin ilkesi kullanırsınız. İzin ilkesi; Etki, Eylem/NotAction, Kaynak, Koşul ve Sorumlu gibi temel öğelerden oluşur.

Öğe

Açıklama

Etki

İlke ifadesinin erişime izin verip vermeyeceğini belirtir. Geçerli değerler şunlardır:

  • Allow: Erişime izin verir.

  • Deny: Erişimi reddeder.

Eylem/NotAction

Belirli bir kaynak üzerinde gerçekleştirilen işlem. Bir ilke ifadesinde Eylem veya NotAction öğelerinden birini belirtmeniz gerekir:

  • Eylem: İzin verilen veya reddedilen belirli işlem.

  • NotAction: İlkenin dışında tutulan işlemler. NotAction kullandığınızda, listelenenler hariç tüm işlemlere izin verilir veya reddedilir.

Kaynak

İlkenin uygulandığı belirli nesne veya nesneler.

Koşul

Yetkilendirmenin geçerli olduğu koşullar.

Sorumlu

Bir kaynağa erişimine izin verilen veya erişimi reddedilen varlık. Bu öğe yalnızca RAM rolünün güven ilkesi gibi kaynak tabanlı ilkeler için geçerlidir.

Etki

Etki öğesi, bir ilkenin erişime izin verip vermeyeceğini belirtir. Bu öğe zorunludur.

Etki öğesi için geçerli değerler Allow ve Deny'dir.

Not

Bir izin ilkesi hem Allow hem de Deny içeriyorsa Deny öncelik kazanır.

Örnek:

"Effect": "Allow"

Eylem/NotAction

Bir ilke ifadesi Eylem veya NotAction öğelerinden birini içermelidir. Eylem, izin verilen veya reddedilen işlemleri belirtir. NotAction ise ilkenin dışında tutulan işlemleri belirtir.

Eylem/NotAction öğesi için geçerli değerler cloud hizmeti tarafından tanımlanan API işlem adlarıdır.

Eylem/NotAction öğesinin biçimi <ram-code>:<action-name> şeklindedir.

Eylem/NotAction öğesinin değeri genellikle büyük/küçük harfe duyarlı değildir. Ancak tutarlı davranış sağlamak için cloud hizmetinin yetkilendirme belgelerinde belirtilen tam <ram-code> ön ekini ve <action-name> değerini kullanın.

Örnekler:

  • Eylem örneği

    "Action": [
      "oss:ListBuckets",
      "ecs:Describe*",
      "rds:Describe*"
    ]
  • Sıra bağımsızlığı

    Eylem dizisindeki öğelerin sırası yetkilendirme sonucunu etkilemez. Her eylem dizideki konumundan bağımsız olarak ayrı ayrı değerlendirilir. Bu nedenle aşağıdaki iki gösterim eşdeğerdir:

    "Action": [
      "ecs:DescribeSecurityGroups",
      "ecs:DescribeInstances"
    ]
    "Action": [
      "ecs:DescribeInstances",
      "ecs:DescribeSecurityGroups"
    ]
  • NotAction örneği

    Aşağıdaki örnek RAM'deki işlemler hariç tüm işlemlere izin verir. İlke tüm izin verilen işlemler yerine yalnızca dışlanan işlemi (ram:*) listeler; bu da ilke ifadesini daha kısa hale getirir. Ancak bu durum geniş izinler sağlar. Bu yöntemi dikkatli kullanın ve ilkenin beklentiniz doğrultusunda davrandığından emin olun.

    {
    	"Effect": "Allow",
    	"NotAction": "ram:*",
    	"Resource": "*"
    }

Kaynak

Kaynak öğesi ilkenin uygulandığı bir veya daha fazla nesneyi açıklar. Bu öğe kimlik tabanlı ilkelerde kullanılır ve zorunludur.

Kaynak öğesinin değeri bir cloud hizmeti tarafından tanımlanan bir kaynağın ARN'sidir (Aliyun Resource Name).

Kaynak öğesinin biçimi acs:<ram-code>:<region>:<account-id>:<relative-id> şeklindedir. Cloud hizmetinin yetkilendirme belgelerinde belirtilen tam ARN'yi kullanın.

Biçim aşağıda açıklandığı gibidir:

  • acs: Alibaba Cloud service kısaltmasıdır. İsteğin Alibaba Cloud genel cloud platformunu hedeflediğini belirtir.

  • ram-code: Cloud hizmeti için RAM kodu. Daha fazla bilgi için bkz. RAM'i destekleyen Alibaba Cloud hizmetleri içindeki RAM Code sütunu.

  • region: Bölge bilgisi. Belirli bir bölge belirtilmeden erişilebilen genel kaynaklar için yıldız işareti (*) kullanın. Daha fazla bilgi için bkz. Bölgeler ve kullanılabilirlik alanları.

  • account-id: Bir Alibaba Cloud hesabının ID'si. Örneğin 123456789012****.

  • relative-id: Anlamı belirli cloud hizmeti tarafından tanımlanan kaynağı açıklayan ARN bölümü. Bu bölüm dosya yoluna benzer şekilde ağaç yapısını destekler. Örneğin bir OSS nesnesini belirtmek için biçim relative-id = "mybucket/dir1/object1.jpg" şeklindedir.

Örnek:

"Resource": [
  "acs:ecs:*:*:instance/inst-001",
  "acs:ecs:*:*:instance/inst-002",
  "acs:oss:*:*:mybucket",
  "acs:oss:*:*:mybucket/*"
]

Koşul

Koşul öğesi bir ilkenin geçerli olması için karşılanması gereken koşulları belirtir. Bu öğe isteğe bağlıdır.

Koşul bloğu olarak da adlandırılan Koşul öğesi bir veya daha fazla koşul yan tümcesinden oluşur. Her yan tümce bir koşul operatörü bir koşul anahtarı ve bir veya daha fazla koşul değeri içerir.

条件块判断逻辑

Not

Koşul öğesi isteğe bağlı olduğundan sistem varlığını doğrulamaz. Koşul belirtmek için Koşul öğesini kullanıyorsanız doğru yazım ve büyük/küçük harf kullanımından emin olun.

Bir koşul anahtarının adı (anahtar) büyük/küçük harfe duyarlıdır. Koşul değerinin (değer) büyük/küçük harfe duyarlı olup olmadığı kullandığınız koşul operatörüne bağlıdır. Örneğin dize türündeki bir koşul anahtarı için StringEquals operatörünü kullanırsanız ilkedeki değeri istekteki değerle eşleştirir ve eşleşme büyük/küçük harfe duyarlıdır. StringEqualsIgnoreCase operatörünü kullanırsanız ilkedeki değeri istekteki değerle eşleştirir ancak büyük/küçük harfi yoksayar.

Koşul öğesi aşağıdaki özelliklere sahiptir:

  • Değerlendirme mantığı

    • İstekteki anahtarın değeri ilkedeki değerlerden herhangi biriyle eşleşirse koşul karşılanır (mantıksal VEYA).

    • Bir koşul yan tümcesi birden çok koşul anahtarı içeriyorsa yan tümcenin karşılanması için tüm anahtarların eşleşmesi gerekir (mantıksal VE).

    • Tüm koşul bloğu yalnızca tüm yan tümceleri karşılandığında karşılanır (mantıksal VE).

  • Koşul operatörü türleri

    Koşul operatörü türleri arasında Dize Sayı Tarih ve saat Boole ve IP adresi bulunur. Koşul operatörlerinin anlamları ve örnekleri için bkz. Koşul operatörleri.

  • Koşul anahtarları

    • Alibaba Cloud genel koşul anahtarları şu biçimi kullanır: acs:<condition-key>.

      Genel koşul anahtarı

      Tür

      Açıklama

      acs:CurrentTime

      Tarih ve saat

      Web sunucusunun isteği aldığı zaman.

      Not

      ISO 8601 standart biçiminde UTC saati kullanın. 

      Örneğin Pekin saatiyle (UTC+8) 10 Ocak 2023'te 20:00:00 2023-01-10T20:00:00+08:00 veya 2023-01-10T12:00:00Z olarak temsil edilir.

      acs:SecureTransport

      Boole

      İsteğin HTTPS gibi güvenli bir kanal üzerinden gönderilip gönderilmediğini belirtir.

      acs:SourceIp

      IP adresi

      İsteğin gönderildiği istemci IP adresi.

      Not

      acs:SourceIp değeri belirli bir IP adresi veya CIDR bloğu olabilir. Belirli bir IP adresini CIDR biçiminde yazmayın. Örneğin 10.0.0.1'i 10.0.0.1/32 olarak yazmayın.

      acs:MFAPresent

      Boole

      Kullanıcının çok faktörlü kimlik doğrulama (MFA) ile oturum açıp açmadığını belirtir.

      Not

      RAM kullanıcısının güvenlik ayarlarında MFA for RAM user sign-in seçeneği Required Only for Unusual Logon olarak ayarlanmışsa acs:MFAPresent koşulu etkinliğini yitirir. Daha fazla bilgi için bkz. Bir RAM kullanıcısının güvenlik ayarlarını yönetme.

      acs:PrincipalARN

      Dize

      İstek sorumlusunun kimliği. Bu yalnızca Resource Directory'nin kontrol ilkelerinde ve RAM rollerinin güven ilkelerinde kullanılabilir. Örneğin acs:ram:::role/resourcedirectory.

      Not

      Şu anda yalnızca bir RAM rolünün ARN'si desteklenir ve küçük harfle yazılmalıdır. Bir RAM rolünün ARN'sini RAM konsolundaki ayrıntılar sayfasında bulabilirsiniz.

      acs:PrincipalRDId

      Dize

      İstek sorumlusunun cloud hesabının ait olduğu Resource Directory'nin ID'si örneğin rd-AA****. Bir Resource Directory ID'sini görüntülemek için bkz. Bir kaynak dizininin temel bilgilerini görüntüleme.

      Bu yalnızca RAM rollerinin güven ilkelerinde ve OSS Paket İlkelerinde kullanılabilir.

      acs:PrincipalRDPath

      Dize

      İstek sorumlusunun cloud hesabının Resource Directory'deki yolu. Biçim genellikle <RD-Id>/<Root-folder-Id>/<Sub-folder-Id>/<Member-account-Id> şeklindedir örneğin rd-AA**/r-aQ/fd-caiJfl/199386846043**. Bir üye hesabın tam RDPath bilgisini nasıl görüntüleyeceğiniz hakkında bilgi için bkz. Bir üyenin bilgilerini görüntüleme.

      Belirtilen bir RDPath altındaki tüm üye hesaplarla eşleşmek için joker karakterini StringLike koşul operatörüyle birlikte kullanabilirsiniz. Örneğin "Condition": {"StringLike": {"acs:PrincipalRDPath": ["<RD-Id>/<Root-folder-Id>/<Sub-folder-Id>"]}}.

      Bu yalnızca RAM rollerinin güven ilkelerinde ve OSS Paket İlkelerinde kullanılabilir.

      acs:RequestTag/<tag-key>

      Dize

      İstekte bulunan etiketler. <tag-key> değerini gerçek etiket anahtarınızla değiştirin. Desteklenen cloud hizmetleri ve kaynak türleri için bkz. Etiketleri destekleyen Alibaba Cloud hizmetleri içindeki Authentication by Resource Type bilgisi.

      acs:ResourceTag/<tag-key>

      Dize

      İstenen kaynağa eklenen etiketler. <tag-key> değerini gerçek etiket anahtarınızla değiştirin. Desteklenen cloud hizmetleri ve kaynak türleri için bkz. Etiketleri destekleyen Alibaba Cloud hizmetleri içindeki Authentication by Resource Type bilgisi.

    • Hizmete özel koşul anahtarları şu biçimi kullanır: <ram-code>:<condition-key>.

      Örneğin OSS koşul anahtarı oss:Delimiter ListObjects isteklerinde nesne adlarını bir karaktere göre gruplandırmak için kullanılır.

      Her cloud hizmetine özel koşul anahtarları için ilgili hizmetin yetkilendirme belgelerine bakın.

  • Koşul örnekleri

    Tek bir Koşul bloğu içindeki koşul yan tümceleri (IpAddress ve Bool gibi) mantıksal VE ile değerlendirilir. Mantıksal VEYA oluşturmak için her koşulu ayrı bir ilke ifadesine yerleştirin.

    Örnek 1: Bir RAM kullanıcısının MFA'yı etkinleştirmesi ve isteği 203.0.113.2 IP adresinden yapması durumunda yalnızca ECS örneklerine erişmesine izin verin.

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": "ecs:*",
          "Resource": "*",
          "Condition": {
            "IpAddress": {
              "acs:SourceIp": [
                "203.0.113.2"
              ]
            },
            "Bool": {
              "acs:MFAPresent": [
                "true"
              ]
            }
          }
        }
      ]
    }

    Örnek 2: Bir RAM kullanıcısının MFA'yı etkinleştirmesi veya isteği 203.0.113.2 IP adresinden yapması durumunda ECS örneklerine erişmesine izin verin.

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": "ecs:*",
                "Resource": "*",
                "Condition": {
                    "IpAddress": {
                        "acs:SourceIp": [
                            "203.0.113.2"
                        ]
                    }
                }
            },
            {
                "Effect": "Allow",
                "Action": "ecs:*",
                "Resource": "*",
                "Condition": {
                    "Bool": {
                        "acs:MFAPresent": [
                            "true"
                        ]
                    }
                }
            }
        ]
    }

Sorumlu

Kaynak tabanlı ilkelerde zorunlu olan Sorumlu öğesi bir kaynağa erişimine izin verilen veya erişimi reddedilen varlığı belirtir.

Not

Kimlik tabanlı bir ilke Sorumlu öğesini kullanamaz. Kimlik tabanlı ilke bir RAM kimliğine (RAM kullanıcısı kullanıcı grubu veya RAM rolü) eklenen bir izin ilkesidir. İlkenin eklendiği kimlik örtük sorumludur.

Sorumlu öğesinde birden çok sorumlu türü ekleyebilir ve her tür için birden çok sorumlu belirtebilirsiniz. Birden çok sorumlu türünü virgülle (,) ayırın. Bir sorumlu türü birden çok değer içeriyorsa bunları köşeli parantez ([ ]) içine alın ve virgülle (,) ayırın. Birden çok sorumlu arasında VEYA ilişkisi vardır; bu belirtilen tüm sorumlulara izin verildiği anlamına gelir.

Aşağıda bir Sorumlu öğesi örneği verilmiştir:

"Principal": {
  "RAM": [
    "acs:ram::123456789012****:root",
    "acs:ram::987654321098****:root"
  ],
  "Service": "ecs.aliyuncs.com"
}

Sorumlu kimliği doğrulanmış bir varlıktır. Aşağıdaki türlerden biri olabilir:

  • Alibaba Cloud hesabı

    Bir Alibaba Cloud hesabını sorumlu olarak belirtebilirsiniz. Bu o hesaptaki tüm RAM kullanıcılarına ve RAM rollerine izin verir. Bir Alibaba Cloud hesabı belirttiğinizde ARN'sini (acs:ram::<account-id>:root) kullanmanız gerekir. Aşağıda bir örnek verilmiştir:

    "Principal": {
        "RAM": "acs:ram::123456789012****:root"
    }
    Not

    Hesap ARN'sini (...:root) sorumlu olarak belirtmek belirli bir kullanıcı kimliği değil tüm hesaba güven duyulduğu anlamına gelir. Ardından izinler o hesap içinde devredilebilir.

  • RAM kullanıcısı

    Bir RAM kullanıcısını sorumlu olarak belirtebilirsiniz. RAM kullanıcısının ARN'sini (acs:ram::<account-id>:user/<user-name>) belirtmeniz gerekir; burada <user-name> RAM kullanıcısının adı olmalıdır. Aşağıda bir örnek verilmiştir:

    "Principal": {
      "RAM": [
        "acs:ram::123456789012****:user/<user1-name>",
        "acs:ram::123456789012****:user/<user2-name>"
      ]
    }

    Sorumlu öğesinde bir RAM kullanıcısı belirttiğinizde kısmi eşleşme için joker karakter (*) kullanamazsınız. RAM kullanıcısının tam adını belirtmeniz gerekir.

    Önemli

    Bir RAM rolü güven ilkesinde Principal öğesi bir RAM kullanıcısının ARN'sini içeriyorsa güven ilkesini kaydettiğinizde sistem bu ARN'yi bir ID'ye (örneğin 29695932303672****) dönüştürür. Genellikle bu ID'yi görmezsiniz. Yalnızca belirtilen RAM kullanıcısı silindiğinde güven ilkesinde görünür. Böyle bir durumda ID'yi kaldırabilir veya geçerli bir RAM kullanıcısının ARN'siyle değiştirebilirsiniz. Bu mekanizma güvenlik risklerini azaltmaya yardımcı olur. Ayrıca bir güven ilkesi oluştururken veya güncellerken <user-name> değerinin büyük/küçük harf durumu konusunda endişelenmenize gerek yoktur; sistem bunu otomatik olarak standart bir ARN'ye dönüştürür.

  • RAM rolü

    Bir RAM rolünü sorumlu olarak belirtebilirsiniz. RAM rolünün ARN'sini (acs:ram::<account-id>:role/<role-name>) belirtmeniz gerekir; burada <role-name> RAM rolünün adı olmalıdır. Aşağıda bir örnek verilmiştir:

    "Principal": {
      "RAM": [
        "acs:ram::123456789012****:role/<role-name>"
      ]
    }

    Sorumlu öğesinde bir RAM rolü belirttiğinizde kısmi eşleşme için joker karakter (*) kullanamazsınız. RAM rolünün tam adını belirtmeniz gerekir.

    Önemli

    Bir RAM rolü güven ilkesinde Principal öğesi bir RAM rolünün ARN'sini içeriyorsa güven ilkesini kaydettiğinizde sistem bu ARN'yi bir ID'ye (örneğin 38915594982675****) dönüştürür. Genellikle bu ID'nin farkında olmazsınız. Yalnızca belirtilen RAM rolü silindiğinde güven ilkesinde görüntülenir. Böyle bir durumda ID'yi silebilir veya geçerli bir RAM rolünün ARN'siyle değiştirebilirsiniz. Bu mekanizma güvenlik risklerini azaltmaya yardımcı olur. Ayrıca bir güven ilkesi oluştururken veya güncellerken <role-name> değerinin büyük/küçük harf duyarlılığı konusunda endişelenmenize gerek yoktur. Sistem bunu otomatik olarak standart bir ARN'ye dönüştürür.

  • Alibaba Cloud hizmeti

    Bir Alibaba Cloud hizmetini sorumlu olarak belirtebilirsiniz. Hizmet sorumlusu genellikle <service-name>.aliyuncs.com biçimini kullanan bir hizmet tanımlayıcısıdır. <service-name> değeri için cloud hizmeti tarafından sağlanan tam hizmet adını kullanın. Aşağıda bir örnek verilmiştir:

    "Principal": {
      "Service": [
        "ecs.aliyuncs.com"
      ]
    }
  • Kimlik sağlayıcı

    Bir kimlik sağlayıcıyı sorumlu olarak belirtebilirsiniz. Kimlik sağlayıcının ARN'sini belirtmeniz gerekir. Alibaba Cloud SAML 2.0 ve OIDC tabanlı tek oturum açma (SSO) özelliğini destekler. SAML protokolünü kullanan bir SSO acs:ram::<account-id>:saml-provider/<provider-name> biçiminde bir ARN'ye sahip olan bir SAML kimlik sağlayıcısı gerektirir. OIDC protokolünü kullanan bir SSO acs:ram::<account-id>:oidc-provider/<provider-name> biçiminde bir ARN'ye sahip olan bir OIDC kimlik sağlayıcısı gerektirir. Sorumlu öğesindeki ARN değeri büyük/küçük harfe duyarlıdır. Sistem tarafından sağlanan kimlik sağlayıcı için standart ARN bilgilerini kullanın.

    "Principal": {
      "Federated": [
        "acs:ram::123456789012****:saml-provider/<provider-name>"
      ]
    }