Tüm Ürünler
Search
Belge Merkezi

Auto Scaling:Etiketleri kullanarak ölçeklendirme grubu izinlerini yönetin

Son Güncelleme:Sep 30, 2026

Auto Scaling, etiketleri kullanarak ölçeklendirme gruplarını kategorize etmenize ve bu gruplara erişimi kontrol etmenize olanak tanır. Belirli bir etiketi paylaşan tekil veya birden fazla ölçeklendirme grubuna ayrıntılı izinler verebilirsiniz. Bu konu, yönetim verimliliğini artırmak ve veri sızıntısı riskini azaltmak için RAM kullanıcı izinlerini yönetmede etiket tabanlı kimlik doğrulamanın nasıl kullanılacağını açıklar.

Arka plan

  • Etiket, bir cloud kaynağı için tanımlayıcıdır. Farklı boyutlardan aynı özelliklere sahip cloud kaynaklarını kategorize etmek, aramak ve toplamak için etiketleri kullanabilirsiniz. Daha fazla bilgi için bkz. Etiketler.

  • Resource Access Management (RAM), kullanıcı kimliklerini yönetmenize ve ilkeler temelinde cloud kaynaklarınıza erişimi ve üzerindeki işlemleri kontrol etmenize olanak tanır. Daha fazla bilgi için bkz. RAM nedir?.

Bir Resource Access Management (RAM) ilkesinde koşul olarak etiketleri kullanarak Auto Scaling üzerinde ayrıntılı kontrol uygulayabilirsiniz.

Aşağıdaki şekilde, RAM kullanıcılarının kaynak erişimini ve işlem izinlerini yönetmek için etiketlerin nasıl kullanılacağı (etiket tabanlı kimlik doğrulama olarak adlandırılır) gösterilmektedir.

image

Etiket kimlik doğrulamasını desteklemeyen API'ler

Bir RAM kullanıcısına etiket tabanlı kimlik doğrulama için bir ilke atadıktan sonra, söz konusu kullanıcı Auto Scaling'i yönetmek amacıyla aşağıdaki API işlemlerini çağırdığında etiket tabanlı kimlik doğrulama desteklenmez.

API

Etiket kimlik doğrulama desteği

DescribeRegions

Hayır

Bir ölçeklendirme grubuyla ilişkili olmayan zamanlanmış görevler için:

  • CreateScheduledTask

  • ModifyScheduledTask

  • DescribeScheduledTasks

  • DeleteScheduledTask

Hayır

Bir ölçeklendirme grubuyla ilişkili olmayan olay tetiklemeli görevler için:

  • CreateAlarm

  • DescribeAlarms

  • ModifyAlarm

  • EnableAlarm

  • DeleteAlarm

Hayır

Örnek senaryo

Bu konuda, etiket tabanlı kimlik doğrulamanın nasıl uygulanacağı aşağıdaki senaryo kullanılarak gösterilmektedir.

Oyun geliştirme için iki ölçeklendirme grubu oluşturduğunuzu varsayalım. Her ölçeklendirme grubu ortam ve ekip bilgilerine göre etiketlenmiştir. Bir RAM kullanıcısına aşağıdaki ölçeklendirme grupları üzerinde belirli izinler vermeniz gerekmektedir:

Ölçeklendirme grubu

Ad

Etiket

Ölçeklendirme grubu 1

asg-001

  • Etiket 1: environment:test; burada etiket anahtarı environment, etiket değeri ise test'tir.

  • Etiket 2: team:game1; burada etiket anahtarı team, etiket değeri ise game1'dir.

Ölçeklendirme grubu 2

asg-002

  • Etiket 1: environment:dev; burada etiket anahtarı environment, etiket değeri ise dev'dir.

  • Etiket 2: team:game2; burada etiket anahtarı team, etiket değeri ise game2'dir.

Belirli erişim kontrolü gereksinimleri şu şekildedir:

  • Senaryo 1: Etiketsiz ölçeklendirme grupları oluşturamazsınız. Oluşturma sırasında environment:test ve team:game1 etiketlerini eklerseniz Ölçeklendirme grubu 1 başarıyla oluşturulur.

  • Senaryo 2: Ölçeklendirme gruplarını sorgularken yalnızca environment:test ve team:game1 etiketleriyle ilişkili olan Ölçeklendirme grubu 1'in kaynaklarını görüntüleyebilirsiniz.

  • Senaryo 3: Yalnızca Ölçeklendirme grubu 1'deki (environment:test ve team:game1 etiketlerine sahip) kaynakları yönetebilir, ancak Ölçeklendirme grubu 2'deki (environment:dev ve team:game2 etiketlerine sahip) kaynakları yönetemezsiniz.

Yordam

Not

Başlamadan önce bir RAM kullanıcısı oluşturduğunuzdan emin olun. Daha fazla bilgi için bkz. RAM kullanıcısı oluşturun.

  1. İki ölçeklendirme grubu oluşturun.

    Daha fazla bilgi için bkz. Ölçeklendirme gruplarını yapılandırın. Ölçeklendirme gruplarıyla ilgili ayrıntılar için bkz. Örnek senaryo.

  2. RAM konsolunda oturum açın.

  3. Özel bir ilke oluşturun.

    Daha fazla bilgi için bkz. Özel ilke oluşturun.

    Auto Scaling kaynaklarında işlem gerçekleştirmek üzere izinleri kısıtlamak amacıyla bir ilkenin Condition bloğundaki cloud kaynakları için birden fazla etiket koşulu belirtebilirsiniz. Desteklenen etiket tabanlı kimlik doğrulama koşulları şunlardır:


    Etiket tabanlı koşul


    Açıklama


    acs:RequestTag

    İsteğin belirli bir etiket içerip içermediğini denetler.

    Bir API isteği herhangi bir etiket parametresi içermiyorsa acs:RequestTag kullanılması kimlik doğrulamanın başarısız olmasına neden olur.


    acs:ResourceTag

    İstekte belirtilen kaynağın belirli bir etiket içerip içermediğini denetler.

    Kaynak ID'si parametresi içermeyen bir API isteğinde acs:ResourceTag kullanılırsa kimlik doğrulama başarısız olur.

    Aşağıdaki kod bloğu eksiksiz bir ilke örneğini göstermektedir:

    {
        "Version": "1",
        "Statement": [
             {
               "Effect": "Allow",
               "Action": "ess:Create*",
               "Resource": "*",
               "Condition": {
                       "StringEquals": {
                            "acs:RequestTag/environment": "test",
                            "acs:RequestTag/team": "game1"
                       }
                  }
             },
             {
                "Effect": "Allow",
                "Action": "ess:Describe*",
                "Resource": "*",
                "Condition": {
                        "StringEquals": {
                        "acs:RequestTag/environment": "test",
                        "acs:RequestTag/team": "game1"
                        }
                  }
             },
             {
                "Action": "ess:*",
                "Effect": "Allow",
                "Resource": "*",
                "Condition": {
                    "StringEquals": {
                        "acs:ResourceTag/environment": "test",
                        "acs:ResourceTag/team": "game1"
                      }
                  }
             },
             {
                "Effect": "Allow",
                "Action": [
                       "ess:Describe*",
                       "ess:List*",
                       "ess:DescribeRegions",
                       "ess:CreateScheduledTask",
                       "ess:ModifyScheduledTask",
                       "ess:DescribeScheduledTasks",
                       "ess:DeleteScheduledTask",
                       "ess:CreateAlarm",
                       "ess:DescribeAlarms",
                       "ess:ModifyAlarm",
                       "ess:EnableAlarm",
                       "ess:DeleteAlarm"
                    ],
        "Resource": "*"
          }
       ]
    }
    • Senaryo 1: Ölçeklendirme grubu oluşturma sırasında belirli etiketleri zorunlu kılın

      Bu, Ölçeklendirme grubu 1'in yalnızca oluşturma sırasında environment:test ve team:game1 etiketleriyle ilişkilendirilmesi durumunda başarıyla oluşturulabileceği anlamına gelir.

      Aşağıdaki ilke bu senaryoya karşılık gelmektedir:

      {
          "Effect": "Allow",
          "Action": "ess:Create*",
          "Resource": "*",
          "Condition": {
              "StringEquals": {
                  "acs:RequestTag/environment": "test",
                  "acs:RequestTag/team": "game1"
              }
          }
      }
    • Senaryo 2: Kullanıcıların yalnızca Ölçeklendirme grubu 1'i görüntülemesine izin verin

      Bu, Ölçeklendirme grubu 1'e environment:test ve team:game1 etiketlerini atarsanız ölçeklendirme gruplarını sorguladığınızda yalnızca Ölçeklendirme grubu 1'in kaynaklarının döndürüleceği anlamına gelir.

      Aşağıdaki ilke bu senaryoya karşılık gelmektedir:

      {
          "Effect": "Allow",
          "Action": "ess:Describe*",
          "Resource": "*",
          "Condition": {
              "StringEquals": {
                  "acs:RequestTag/environment": "test",
                  "acs:RequestTag/team": "game1"
              }
          }
      }
    • Senaryo 3: Kullanıcıların yalnızca Ölçeklendirme grubu 1'i yönetmesine izin verin ve Ölçeklendirme grubu 2'ye erişimi reddedin

      Örneğin, Ölçeklendirme grubu 1 environment:test ve team:game1 etiketleriyle, Ölçeklendirme grubu 2 ise environment:dev ve team:game2 etiketleriyle ilişkilendirilmiştir.

      Aşağıdaki ilke bu senaryoya karşılık gelmektedir:

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": "ess:*",
                  "Effect": "Allow",
                  "Resource": "*",
                  "Condition": {
                      "StringEquals": {
                          "acs:ResourceTag/environment": "test",
                          "acs:ResourceTag/team": "game1"
                      }
                  }
              },
              {
                  "Action": "ess:*",
                  "Effect": "Deny",
                  "Resource": "*",
                  "Condition": {
                      "StringEquals": {
                          "acs:ResourceTag/environment": "dev",
                          "acs:ResourceTag/team": "game2"
                      }
                  }
              },      
              {
                 "Effect": "Allow",
                 "Action": [
                         "ess:DescribeRegions",
                         "ess:CreateScheduledTask",
                         "ess:ModifyScheduledTask",
                         "ess:DescribeScheduledTasks",
                         "ess:DeleteScheduledTask",
                         "ess:CreateAlarm",
                         "ess:DescribeAlarms",
                         "ess:ModifyAlarm",
                         "ess:EnableAlarm",
                         "ess:DeleteAlarm"
                      ],
          "Resource": "*"
            }
         ]
      }
  4. Özel ilkeyi RAM kullanıcısına atayın.

    Daha fazla bilgi için bkz. RAM kullanıcısına izin verin.

  5. İlkenin etkili olduğunu doğrulayın.

    • Ölçeklendirme grubu 1'i oluşturarak Senaryo 1'i doğrulayın

      • Ölçeklendirme Grubu 1, environment:test ve team:game1 etiketlerine sahip olduğundan başarıyla oluşturulabilir.

      • Ölçeklendirme grubunu belirtilen etiketler olmadan oluşturursanız yetersiz izin nedeniyle oluşturma işlemi reddedilir. Auto Scaling gerekli OpenAPI izinlerine sahip değilse farklı bir hata oluşur: The user has not fully authorized the OpenAPI interface for ESS. Please authorize and try again. mesajıyla birlikte Forbidden.Unauthorized hatası döndürülür. Bu durumda gerekli izinleri verin ve işlemi yeniden deneyin.

    • Ölçeklendirme gruplarını sorgulayarak Senaryo 2'yi doğrulayın

      • environment:test ve team:game1 etiketlerine sahip bir ölçeklendirme grubu için etiketlere göre filtreleme yapmadan sorgu gerçekleştirerek yine de bilgilerini alabilirsiniz.

      • environment:test ve team:game1 etiketleriyle etiketlenmemiş, Ölçeklendirme grubu 1 dışındaki bir ölçeklendirme grubunu sorgularsanız sorgu sonuç döndürmez.

      • Bir ölçeklendirme grubu belirtmeden yalnızca environment:test ve team:game1 etiketlerini ararsanız sorgu bu etiketlere sahip tüm ölçeklendirme gruplarını döndürür.

    • Ölçeklendirme gruplarını silerek Senaryo 3'ü doğrulayın

      • Ölçeklendirme grubu 1, environment:test ve team:game1 etiketlerine sahipse ölçeklendirme grubunu silebilirsiniz.

      • Bir ölçeklendirme grubu environment:test ve team:game1 etiketleriyle ilişkilendirilmemişse veya başka etiketlere sahipse ölçeklendirme grubunu silme izniniz olmadığına dair bir mesaj görüntülenir.

İlgili belgeler