Depo kapsamlı izinlerle belirteç oluşturma

Bu makalede, kapsayıcı kayıt defterinizdeki depolara erişimi yönetmek için belirteçlerin ve kapsam eşlemelerinin nasıl oluşturulacağı açıklanır. Belirteçler oluşturarak, kayıt defteri sahibi kullanıcılara veya hizmetlere görüntüleri çekmek veya göndermek ya da başka eylemler gerçekleştirmek için depolara kapsamlı, sınırlı süreli erişim sağlayabilir. Belirteç, diğer kayıt defteri kimlik doğrulama seçeneklerinden daha ayrıntılı izinler sağlar ve bu da kayıt defterinin tamamına yönelik izinlerin kapsamını oluşturur.

Belirteç oluşturmaya yönelik yaygın senaryolar şunlardır:

  • Tek tek belirteçleri olan IoT cihazlarının bir depodan görüntü çekmesine izin verin.
  • Bir dış kuruluşa bir depo yolu için izinler sağlayın.
  • Depo erişimini kuruluşunuzdaki farklı kullanıcı gruplarıyla sınırlayın. Örneğin, belirli depoları hedefleyen görüntüler oluşturan geliştiricilere yazma ve okuma erişimi sağlayın ve bu depolardan dağıtım yapan ekiplere okuma erişimi sağlayın.

Bu özellik tüm hizmet katmanlarında kullanılabilir. Kayıt defteri hizmet katmanları ve sınırları hakkında bilgi için bkz. Azure Container Registry hizmet katmanları

Sınırlamalar

  • Şu anda hizmet sorumlusu veya yönetilen kimlik gibi bir Microsoft Entra kimliğine depo kapsamlı izinler atayamazsınız.

Kavramlar

Depo kapsamlı izinleri yapılandırmak için ilişkili kapsam eşlemesine sahip bir belirteç oluşturursunuz.

  • Oluşturulan parolayla birlikte belirteç, kullanıcının kayıt defteriyle kimlik doğrulaması yapmasını sağlar. Belirteç parolası için son kullanma tarihi ayarlayabilir veya belirteci istediğiniz zaman devre dışı bırakabilirsiniz.

    Belirteçle kimlik doğrulaması yaptıktan sonra, kullanıcı veya hizmet kapsamı bir veya daha fazla depo olarak belirlenmiş bir veya daha fazla eylem gerçekleştirebilir.

    Eylem Açıklama Örnek
    content/delete Depodan verileri kaldırma Depoyu veya bildirimi silme
    content/read Depodaki verileri okuma Yapıt çekme
    content/write Depoya veri yazma Bir yapıtı göndermek için ile kullanma content/read
    metadata/read Depodan meta verileri okuma Etiketleri veya bildirimleri listeleme
    metadata/write Depoya meta veri yazma Okuma, yazma veya silme işlemlerini etkinleştirme veya devre dışı bırakma

Dekont

Depo kapsamlı izinler, kayıt defterindeki tüm depoların kataloğunu listeleme özelliğini desteklemez.

  • Kapsam eşlemesi , bir belirteç için uyguladığınız depo izinlerini gruplandırabilir ve diğer belirteçlere yeniden uygulayabilir. Her belirteç tek bir kapsam eşlemesiyle ilişkilendirilir. Kapsam haritasıyla şunları yapabilirsiniz:

    • Bir depo kümesi için aynı izinlere sahip birden çok belirteç yapılandırın.
    • Kapsam eşlemesine depo eylemleri eklediğinizde veya kaldırdığınızda veya farklı bir kapsam haritası uyguladığınızda belirteç izinlerini güncelleştirin.

    Azure Container Registry ayrıca belirteç oluştururken uygulayabileceğiniz sistem tanımlı birkaç kapsam eşlemesi de sağlar. Sistem tanımlı kapsam eşlemelerinin izinleri kayıt defterinizdeki tüm depolar için geçerlidir. Tek tek eylemler , kapsam eşlemesi başına depo sınırına karşılık gelir.

Aşağıdaki görüntüde belirteçler ve kapsam eşlemeleri arasındaki ilişki gösterilmektedir.

Registry tokens and scope maps

Önkoşullar

  • Azure CLI - Bu makaledeki Azure CLI komut örnekleri için Azure CLI sürüm 2.17.0 veya üzeri gerekir. Sürümü bulmak için az --version komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure CLI yükleme.
  • Docker - Görüntüleri çekmek veya göndermek için kayıt defterinde kimlik doğrulaması yapmak için yerel bir Docker yüklemeniz gerekir. Docker, macOS, Windows ve Linux sistemleri için yükleme yönergeleri sağlar.
  • Kapsayıcı kayıt defteri - Kapsayıcı kayıt defteriniz yoksa Azure aboneliğinizde bir kapsayıcı kayıt defteri oluşturun. Örneğin, Azure portalını veya Azure CLI'yı kullanın.

Belirteç oluşturma - CLI

Belirteç oluşturma ve depoları belirtme

az acr token create komutunu kullanarak belirteç oluşturun . Belirteç oluştururken, her depoda bir veya daha fazla depo ve ilişkili eylem belirtebilirsiniz. Depoların henüz kayıt defterinde olması gerekmez. Mevcut kapsam eşlemesini belirterek belirteç oluşturmak için sonraki bölüme bakın.

Aşağıdaki örnek, kayıt defterim kayıt defterinde depo üzerinde samples/hello-world aşağıdaki izinlere sahip bir belirteç oluşturur: content/write ve content/read. Varsayılan olarak, komut varsayılan belirteç durumunu olarak enabledayarlar, ancak istediğiniz zaman durumunu olarak disabled güncelleştirebilirsiniz.

az acr token create --name MyToken --registry myregistry \
  --repository samples/hello-world \
  content/write content/read \
  --output json

Çıkışta belirteçle ilgili ayrıntılar gösterilir. Varsayılan olarak, süresi dolmadan iki parola oluşturulur, ancak isteğe bağlı olarak bir son kullanma tarihi ayarlayabilirsiniz. Parolaları daha sonra kimlik doğrulaması için kullanmak üzere güvenli bir yere kaydetmeniz önerilir. Parolalar yeniden alınamaz, ancak yeni parolalar oluşturulabilir.

{
  "creationDate": "2020-01-18T00:15:34.066221+00:00",
  "credentials": {
    "certificates": [],
    "passwords": [
      {
        "creationTime": "2020-01-18T00:15:52.837651+00:00",
        "expiry": null,
        "name": "password1",
        "value": "uH54BxxxxK7KOxxxxRbr26dAs8JXxxxx"
      },
      {
        "creationTime": "2020-01-18T00:15:52.837651+00:00",
        "expiry": null,
        "name": "password2",
        "value": "kPX6Or/xxxxLXpqowxxxxkA0idwLtmxxxx"
      }
    ],
    "username": "MyToken"
  },
  "id": "/subscriptions/xxxxxxxx-adbd-4cb4-c864-xxxxxxxxxxxx/resourceGroups/myresourcegroup/providers/Microsoft.ContainerRegistry/registries/myregistry/tokens/MyToken",
  "name": "MyToken",
  "objectId": null,
  "provisioningState": "Succeeded",
  "resourceGroup": "myresourcegroup",
  "scopeMapId": "/subscriptions/xxxxxxxx-adbd-4cb4-c864-xxxxxxxxxxxx/resourceGroups/myresourcegroup/providers/Microsoft.ContainerRegistry/registries/myregistry/scopeMaps/MyToken-scope-map",
  "status": "enabled",
  "type": "Microsoft.ContainerRegistry/registries/tokens"
}

Dekont

Belirteç parolalarını ve süre sonu dönemlerini yeniden oluşturmak için bu makalenin devamında yer alan Belirteç parolalarını yeniden oluşturma bölümüne bakın.

Çıktı, komutun oluşturduğu kapsam eşlemesi hakkındaki ayrıntıları içerir. Aynı depo eylemlerini diğer belirteçlere uygulamak için burada adlı MyToken-scope-mapkapsam eşlemesini kullanabilirsiniz. Öte yandan, ilişkili belirteçlerin izinlerini değiştirmek için kapsam eşlemesini daha sonra güncelleştirin.

Belirteç oluşturma ve kapsam eşlemesi belirtme

Belirteç oluşturmanın alternatif bir yolu, var olan bir kapsam eşlemesini belirtmektir. Henüz bir kapsam haritanız yoksa, önce depoları ve ilişkili eylemleri belirterek bir harita oluşturun. Ardından, belirteç oluştururken kapsam eşlemesini belirtin.

Kapsam eşlemesi oluşturmak için az acr scope-map create komutunu kullanın. Aşağıdaki komut, daha önce kullanılan depoda samples/hello-world aynı izinlere sahip bir kapsam eşlemesi oluşturur.

az acr scope-map create --name MyScopeMap --registry myregistry \
  --repository samples/hello-world \
  content/write content/read \
  --description "Sample scope map"

MyScopeMap kapsam eşlemesini belirterek bir belirteç oluşturmak için az acr token create komutunu çalıştırın. Önceki örnekte olduğu gibi, komut varsayılan belirteç durumunu olarak enabledayarlar.

az acr token create --name MyToken \
  --registry myregistry \
  --scope-map MyScopeMap

Çıkışta belirteçle ilgili ayrıntılar gösterilir. Varsayılan olarak iki parola oluşturulur. Parolaları daha sonra kimlik doğrulaması için kullanmak üzere güvenli bir yere kaydetmeniz önerilir. Parolalar yeniden alınamaz, ancak yeni parolalar oluşturulabilir.

Dekont

Belirteç parolalarını ve süre sonu dönemlerini yeniden oluşturmak için bu makalenin devamında yer alan Belirteç parolalarını yeniden oluşturma bölümüne bakın.

Birden çok depo için izin tanımlamak ve atamak için kapsam eşlemelerini kullanma

Kapsam eşlemesi, ortak bir ön eki paylaşan birden çok depo için benzer izinleri tanımlamak ve vermek üzere joker karakter kullanılmasına olanak tanır. Belirli izinlere sahip depolar, joker karaktere sahip depolar da aynı kapsam haritasında kullanılabilir. Bu, tek bir kapsam haritasında birden çok depo kümesinin izinlerini yönetme esnekliği sağlar.

Kapsam eşlemesi oluşturulduğunda ve belirteçe atandığında depo izinleri oluşturulabilir. Alternatif olarak, belirteç oluşturulabilir ve doğrudan bir depoya atanabilir.

Aşağıdaki örnek, joker karakterli bir kapsam eşlemesi oluşturur ve bunu bir belirteçe atar.

az acr scope-map create --name MyScopeMapWildcard --registry myregistry \
  --repository samples/* \
  content/write content/read \
  --description "Sample scope map with wildcards"
az acr token create --name MyTokenWildcard \
  --registry myregistry \
  --scope-map MyScopeMapWildcard

Aşağıdaki örnek joker karakter içeren bir belirteç oluşturur.

 az acr token create --name MyTokenWildcard --registry myregistry \
  --repository samples/* \
  content/write content/read \

Joker karakter izinleri eklenir; yani belirli bir depoya erişildiğinde, sonuçta elde edilen izinler joker karakter ön eki ile eşleşen tüm kapsam eşleme kuralları için izinleri içerir.

Bu örnekte kapsam haritası üç farklı depo türü için izinleri tanımlar:

Depo İzin
sample/* content/read
sample/teamA/* content/write
sample/teamA/projectB content/delete

Belirteci, depoya sample/teamA/projectBerişim izinleri vermek [content/read, content/write, content/delete] için bir kapsam eşlemesi atanır. Ancak, depoya erişmek sample/teamA/projectC için aynı belirteç kullanıldığında yalnızca izinlere sahiptir [content/read, content/write] .

Önemli

Kapsam haritasında joker karakterler kullanan depolar her zaman geçerli olacak bir /* sonekle bitmelidir ve depo adında tek bir joker karakter bulunmalıdır. Geçersiz joker karakterlere bazı örnekler aşağıda verilmiştir:

  • sample/*/teamA depo adının ortasında joker karakterle birlikte.
  • sample/teamA* joker karakterle '/*' ile bitmiyor.
  • sample/teamA/*/projectB/* depo adında birden çok joker karaktere sahip.

Kök düzeyinde joker karakterler

Joker karakterler kök düzeyinde de uygulanabilir. Bu, olarak *tanımlanan depoya atanan tüm izinlerin kayıt defteri genelinde uygulanacağı anlamına gelir.

Örnekte, kayıt defterindeki tüm depolara belirteç izinleri verecek kök düzeyinde joker karaktere sahip bir belirtecin [content/read, content/write] nasıl oluşturulacağı gösterilmektedir. Bu, her depoyu ayrı ayrı belirtmek zorunda kalmadan kayıt defterindeki tüm depolara izin vermek için basit bir yol sağlar.

 az acr token create --name MyTokenWildcard --registry myregistry \
  --repository * \
  content/write content/read \

Önemli

Joker karakter kuralı henüz mevcut olmayan bir depoyu kapsıyorsa, joker kuralın izinleri bu depo adına uygulanmaya devam eder. Örneğin, depolar için sample/* izinler [content/write, metadata/write] veren bir kapsam haritasına atanmış bir belirteç. Ayrıca, deponun sample/teamC/teamCimage henüz mevcut olmadığını varsayalım. Belirtecin, başarılı gönderimde depoyu aynı anda oluşturacak olan depoya görüntü sample/teamC/teamCimagegönderme izinleri olacaktır.

Belirteç oluşturma - portal

Belirteçler ve kapsam eşlemeleri oluşturmak için Azure portalını kullanabilirsiniz. CLI komutunda az acr token create olduğu gibi, bir veya daha fazla depo ve ilişkili eylem belirterek bir belirteç oluşturduğunuzda mevcut bir kapsam eşlemesi uygulayabilir veya kapsam haritası oluşturabilirsiniz. Depoların henüz kayıt defterinde olması gerekmez.

Aşağıdaki örnek bir belirteç oluşturur ve depoda samples/hello-world aşağıdaki izinlere sahip bir kapsam eşlemesi oluşturur: content/write ve content/read.

  1. Portalda kapsayıcı kayıt defterinize gidin.

  2. Depo izinleri'nin altında Belirteçler > +Ekle'yi seçin.

    Create token in portal

  3. Bir belirteç adı girin.

  4. Kapsam haritası'nın altında Yeni oluştur'u seçin.

  5. Kapsam eşlemesini yapılandırın:

    1. Kapsam haritası için bir ad ve açıklama girin.

    2. Depolar'ın altında yazın ve İzinler'in altında ve content/writeöğesini seçincontent/read.samples/hello-world Ardından +Ekle'yi seçin.

      Create scope map in portal

    3. Depoları ve izinleri ekledikten sonra Ekle'yi seçerek kapsam eşlemesini ekleyin.

  6. Etkin'in varsayılan belirteci Durumunu kabul edin ve oluştur'u seçin.

Belirteç doğrulanıp oluşturulduktan sonra belirteç ayrıntıları Belirteçler ekranında görüntülenir.

Belirteç parolası ekleme

Portalda oluşturulan bir belirteci kullanmak için bir parola oluşturmanız gerekir. Bir veya iki parola oluşturabilir ve her biri için bir son kullanma tarihi ayarlayabilirsiniz. Belirteçler için oluşturulan yeni parolalar hemen kullanılabilir. Belirteçler için yeni parolaların yeniden oluşturulup çoğaltılması 60 saniye sürer ve kullanılabilir.

  1. Portalda kapsayıcı kayıt defterinize gidin.

  2. Depo izinleri'nin altında Belirteçler'i seçin ve bir belirteç seçin.

  3. Belirteç ayrıntılarında parola1 veya parola2'yi seçin ve Oluştur simgesini seçin.

  4. Parola ekranında, isteğe bağlı olarak parola için bir son kullanma tarihi ayarlayın ve Oluştur'a tıklayın. Son kullanma tarihi ayarlamanız önerilir.

  5. Parola oluşturduktan sonra parolayı kopyalayıp güvenli bir konuma kaydedin. Ekranı kapattıktan sonra oluşturulan bir parolayı alamazsınız, ancak yeni bir parola oluşturabilirsiniz.

    Create token password in portal

Belirteçle kimlik doğrulaması

Bir kullanıcı veya hizmet hedef kayıt defteriyle kimlik doğrulaması yapmak için bir belirteç kullandığında, belirteç adını kullanıcı adı ve oluşturulan parolalarından biri olarak sağlar.

Kimlik doğrulama yöntemi, belirteçle ilişkili yapılandırılmış eyleme veya eylemlere bağlıdır.

Eylem Kimlik doğrulaması
content/delete az acr repository delete Azure CLI'da

Örnek: az acr repository delete --name myregistry --repository myrepo --username MyToken --password xxxxxxxxxx
content/read docker login

az acr login Azure CLI'da

Örnek: az acr login --name myregistry --username MyToken --password xxxxxxxxxx
content/write docker login

az acr login Azure CLI'da
metadata/read az acr repository show

az acr repository show-tags

az acr manifest list-metadata Azure CLI'da
metadata/write az acr repository untag

az acr repository update Azure CLI'da

Örnekler: Belirteci kullanma

Aşağıdaki örneklerde, bir depoda yaygın işlemler gerçekleştirmek için bu makalede daha önce oluşturulan belirteç kullanılır: görüntüleri gönderme ve çekme, görüntüleri silme ve depo etiketlerini listeleme. Belirteç başlangıçta depoda samples/hello-world gönderme izinleri (content/writeve content/read eylemleri) ile ayarlanmıştır.

Test görüntülerini çekme ve etiketleme

Aşağıdaki örnekler için, Microsoft Container Registry'den genel hello-world ve nginx görüntüleri çekin ve bunları kayıt defteriniz ve deponuz için etiketleyin.

docker pull mcr.microsoft.com/hello-world
docker pull mcr.microsoft.com/oss/nginx/nginx:1.15.5-alpine
docker tag mcr.microsoft.com/hello-world myregistry.azurecr.io/samples/hello-world:v1
docker tag mcr.microsoft.com/oss/nginx/nginx:1.15.5-alpine myregistry.azurecr.io/samples/nginx:v1

Belirteç kullanarak kimlik doğrulaması

Görüntüleri göndermek veya az acr login çekmek için kayıt defterinde kimlik doğrulaması yapmak için veya komutunu çalıştırındocker login. Belirteç adını kullanıcı adı olarak belirtin ve parolalarından birini sağlayın. Belirtecin durumu olmalıdır Enabled .

Aşağıdaki örnek bash kabuğu için biçimlendirilmiştir ve ortam değişkenlerini kullanarak değerleri sağlar.

TOKEN_NAME=MyToken
TOKEN_PWD=<token password>

echo $TOKEN_PWD | docker login --username $TOKEN_NAME --password-stdin myregistry.azurecr.io

Çıktıda başarılı kimlik doğrulaması gösterilmelidir:

Login Succeeded

Kayıt defterine görüntü gönderme

Oturum başarıyla açıldıktan sonra etiketli görüntüleri kayıt defterine göndermeyi deneyin. Belirtecin depoya görüntü samples/hello-world gönderme izinleri olduğundan aşağıdaki gönderme başarılı olur:

docker push myregistry.azurecr.io/samples/hello-world:v1

Belirtecin depo izinleri samples/nginx olmadığından aşağıdaki gönderme denemesi aşağıdakine requested access to the resource is deniedbenzer bir hatayla başarısız olur:

docker push myregistry.azurecr.io/samples/nginx:v1

Belirteç izinlerini güncelleştirme

Belirtecin izinlerini güncelleştirmek için ilişkili kapsam eşlemesindeki izinleri güncelleştirin. Güncelleştirilmiş kapsam eşlemesi, ilişkili tüm belirteçlere hemen uygulanır.

Örneğin, ve ile depodaki eylemleri güncelleştirin MyToken-scope-mapcontent/writesamples/ngnxcontent/read ve depodaki samples/hello-world eylemi kaldırın.content/write

Azure CLI'yı kullanmak için az acr scope-map update komutunu çalıştırarak kapsam eşlemesini güncelleştirin:

az acr scope-map update \
  --name MyScopeMap \
  --registry myregistry \
  --add-repository samples/nginx content/write content/read \
  --remove-repository samples/hello-world content/write 

Azure portalında:

  1. Kapsayıcı kayıt defterinize gidin.
  2. Depo izinleri'nin altında Kapsam eşlemeleri'ni seçin ve güncelleştirilecek kapsam eşlemesini seçin.
  3. Depolar'ın altında yazın ve İzinler'in altında ve content/writeöğesini seçincontent/read.samples/nginx Ardından +Ekle'yi seçin.
  4. Depolar'ın altında İzinler'i seçin samples/hello-world ve altında seçimini kaldırıncontent/write. Ardından Kaydet'i seçin.

Kapsam eşlemesini güncelleştirdikten sonra aşağıdaki gönderme başarılı olur:

docker push myregistry.azurecr.io/samples/nginx:v1

Kapsam eşlemesinin yalnızca depo üzerinde samples/hello-world izni olduğundancontent/read, depoya samples/hello-world gönderme girişimi başarısız olur:

docker push myregistry.azurecr.io/samples/hello-world:v1

Kapsam haritası her iki depoda da izinler content/read sağladığından her iki depodan da görüntü çekme başarılı olur:

docker pull myregistry.azurecr.io/samples/nginx:v1
docker pull myregistry.azurecr.io/samples/hello-world:v1

Görüntüleri silme

Eylemi depoya ekleyerek content/delete kapsam haritasını güncelleştirin nginx . Bu eylem, depodaki görüntülerin silinmesine veya deponun tamamının silinmesine olanak tanır.

Kısa bir süre için, kapsam eşlemesini güncelleştirmek için yalnızca az acr scope-map update komutunu gösteririz:

az acr scope-map update \
  --name MyScopeMap \
  --registry myregistry \
  --add-repository samples/nginx content/delete

Portalı kullanarak kapsam haritasını güncelleştirmek için önceki bölüme bakın.

Depoyu silmek samples/nginx için aşağıdaki az acr repository delete komutunu kullanın. Görüntüleri veya depoları silmek için belirtecin adını ve parolasını komutuna geçirin. Aşağıdaki örnek, makalenin önceki bölümlerinde oluşturulan ortam değişkenlerini kullanır:

az acr repository delete \
  --name myregistry --repository samples/nginx \
  --username $TOKEN_NAME --password $TOKEN_PWD

Depo etiketlerini göster

Eylemi depoya ekleyerek metadata/read kapsam haritasını güncelleştirin hello-world . Bu eylem, depodaki bildirim ve etiket verilerinin okunmasına olanak tanır.

Kısa bir süre için, kapsam eşlemesini güncelleştirmek için yalnızca az acr scope-map update komutunu gösteririz:

az acr scope-map update \
  --name MyScopeMap \
  --registry myregistry \
  --add-repository samples/hello-world metadata/read 

Portalı kullanarak kapsam haritasını güncelleştirmek için önceki bölüme bakın.

Depodaki samples/hello-world meta verileri okumak için az acr manifest list-metadata veya az acr repository show-tags komutunu çalıştırın.

Meta verileri okumak için belirtecin adını ve parolasını her iki komuta da geçirin. Aşağıdaki örnek, makalenin önceki bölümlerinde oluşturulan ortam değişkenlerini kullanır:

az acr repository show-tags \
  --name myregistry --repository samples/hello-world \
  --username $TOKEN_NAME --password $TOKEN_PWD

Örnek çıkış:

[
  "v1"
]

Belirteçleri ve kapsam haritalarını yönetme

Kapsam eşlemelerini listeleme

Kayıt defterinde yapılandırılan tüm kapsam haritalarını listelemek için az acr scope-map list komutunu veya portaldaki Kapsam eşlemeleri ekranını kullanın. Örneğin:

az acr scope-map list \
  --registry myregistry --output table

Çıkış, sizin tarafınızdan oluşturulan üç sistem tanımlı kapsam eşlemesi ve diğer kapsam eşlemelerinden oluşur. Belirteçler bu kapsam haritalarından herhangi biriyle yapılandırılabilir.

NAME                 TYPE           CREATION DATE         DESCRIPTION
-------------------  -------------  --------------------  ------------------------------------------------------------
_repositories_admin  SystemDefined  2020-01-20T09:44:24Z  Can perform all read, write and delete operations on the ...
_repositories_pull   SystemDefined  2020-01-20T09:44:24Z  Can pull any repository of the registry
_repositories_push   SystemDefined  2020-01-20T09:44:24Z  Can push to any repository of the registry
MyScopeMap           UserDefined    2019-11-15T21:17:34Z  Sample scope map

Belirteç ayrıntılarını göster

Belirtecin durumu ve parola son kullanma tarihleri gibi ayrıntılarını görüntülemek için az acr token show komutunu çalıştırın veya portaldaki Belirteçler ekranında belirteci seçin. Örneğin:

az acr scope-map show \
  --name MyScopeMap --registry myregistry

Kayıt defterinde yapılandırılan tüm belirteçleri listelemek için az acr token list komutunu veya portaldaki Belirteçler ekranını kullanın. Örneğin:

az acr token list --registry myregistry --output table

Belirteç parolalarını yeniden oluşturma

Belirteç parolası oluşturmadıysanız veya yeni parolalar oluşturmak istiyorsanız az acr token credential generate komutunu çalıştırın. Belirteçler için yeni parolaların yeniden oluşturulup çoğaltılması 60 saniye sürer ve kullanılabilir.

Aşağıdaki örnek, MyToken belirteci için parola1 için son kullanma süresi 30 gün olan yeni bir değer oluşturur. Parolayı ortam değişkeninde TOKEN_PWDdepolar. Bu örnek bash kabuğu için biçimlendirilmiştir.

TOKEN_PWD=$(az acr token credential generate \
  --name MyToken --registry myregistry --expiration-in-days 30 \
  --password1 --query 'passwords[0].value' --output tsv)

Belirteç parolası oluşturmak için Azure portalını kullanmak için bu makalenin önceki bölümlerinde yer alan Belirteç oluşturma - portal başlığındaki adımlara bakın.

Belirteci yeni kapsam haritasıyla güncelleştirme

Belirteci farklı bir kapsam haritasıyla güncelleştirmek istiyorsanız az acr token update komutunu çalıştırın ve yeni kapsam eşlemesini belirtin. Örneğin:

az acr token update --name MyToken --registry myregistry \
  --scope-map MyNewScopeMap

Portalda, Belirteçler ekranında belirteci seçin ve Kapsam haritası'nın altında farklı bir kapsam haritası seçin.

Bahşiş

Belirteci yeni kapsam haritasıyla güncelleştirdikten sonra yeni belirteç parolaları oluşturmak isteyebilirsiniz. Azure portalında az acr token credential generate komutunu kullanın veya belirteç parolasını yeniden oluşturun.

Belirteci devre dışı bırakma veya silme

Bir kullanıcı veya hizmet için belirteç kimlik bilgilerinin kullanımını geçici olarak devre dışı bırakmanız gerekebilir.

Azure CLI'yı kullanarak az acr token update komutunu çalıştırarak disabledstatus olarak ayarlayın:

az acr token update --name MyToken --registry myregistry \
  --status disabled

Portalda Belirteçler ekranında belirteci seçin ve Durum'un altında Devre Dışı'nıseçin.

Kimlik bilgilerini kullanan herkes tarafından erişimi kalıcı olarak geçersiz kılacak bir belirteci silmek için az acr token delete komutunu çalıştırın.

az acr token delete --name MyToken --registry myregistry

Portalda Belirteçler ekranında belirteci seçin ve At'ı seçin.

Sonraki adımlar