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
Not
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.
Ö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 enabled
ayarlar, 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"
}
Not
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-map
kapsam 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 enabled
ayarlar.
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.
Not
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/projectB
eriş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/teamCimage
gö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
.
Portalda kapsayıcı kayıt defterinize gidin.
Depo izinleri'nin altında Belirteçler > +Ekle'yi seçin.
Bir belirteç adı girin.
Kapsam haritası'nın altında Yeni oluştur'u seçin.
Kapsam eşlemesini yapılandırın:
Kapsam haritası için bir ad ve açıklama girin.
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.Depoları ve izinleri ekledikten sonra Ekle'yi seçerek kapsam eşlemesini ekleyin.
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.
Portalda kapsayıcı kayıt defterinize gidin.
Depo izinleri'nin altında Belirteçler'i seçin ve bir belirteç seçin.
Belirteç ayrıntılarında parola1 veya parola2'yi seçin ve Oluştur simgesini seçin.
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.
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.
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/write
ve 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 denied
benzer 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-map
content/write
samples/ngnx
content/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:
- Kapsayıcı kayıt defterinize gidin.
- Depo izinleri'nin altında Kapsam eşlemeleri'ni seçin ve güncelleştirilecek kapsam eşlemesini seçin.
- 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. - 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_PWD
depolar. 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.
İpucu
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 disabled
status
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
- Kapsam eşlemelerini ve belirteçlerini yönetmek için az acr scope-map ve az acr token komut gruplarında ek komutları kullanın.
- Microsoft Entra kimliği, hizmet sorumlusu veya yönetici hesabı kullanma gibi Azure kapsayıcı kayıt defteriyle kimlik doğrulamasına yönelik diğer seçenekler için kimlik doğrulamasına genel bakış bölümüne bakın.
- Bağlı kayıt defterleri ve erişim için belirteçleri kullanma hakkında bilgi edinin.