Azure Container Registry-szerepkörök és engedélyek
Az Azure Container Registry szolgáltatás olyan beépített Azure-szerepköröket támogat, amelyek különböző szintű engedélyeket biztosítanak egy Azure-tárolóregisztrációs adatbázishoz. Az Azure szerepköralapú hozzáférés-vezérlés (Azure RBAC) használatával adott engedélyeket rendelhet hozzá azokhoz a felhasználókhoz, szolgáltatásnevekhez vagy más identitásokhoz, amelyeknek egy beállításjegyzékkel kell kommunikálniuk, például tárolólemezképek lekéréséhez vagy leküldéséhez. A különböző műveletek beállításjegyzékéhez tartozó részletes engedélyekkel rendelkező egyéni szerepköröket is definiálhat.
Szerepkör/Engedély | Hozzáférés a Resource Managerhez | Beállításjegyzék létrehozása/törlése | Kép leküldése | Lekéréses kép | Képadatok törlése | Szabályzatok módosítása | Képek aláírása |
---|---|---|---|---|---|---|---|
Tulajdonos | X | X | X | X | X | X | |
Közreműködő | X | X | X | X | X | X | |
Olvasó | X | X | |||||
AcrPush | X | X | |||||
AcrPull | X | ||||||
AcrDelete | X | ||||||
AcrImageSigner | X |
Szerepkörök hozzárendelése
Tekintse meg a szerepkör-hozzárendelés hozzáadásának lépéseit a magas szintű lépésekhez, ha szerepkör-hozzárendelést szeretne hozzáadni egy meglévő felhasználóhoz, csoporthoz, szolgáltatásnévhez vagy felügyelt identitáshoz. Használhatja az Azure Portalt, az Azure CLI-t, az Azure PowerShellt vagy más Azure-eszközöket.
Szolgáltatásnév létrehozásakor az Azure-erőforrásokhoz, például a tárolóregisztrációs adatbázishoz való hozzáférését és engedélyeit is konfigurálja. Az Azure CLI-t használó példaszkriptért lásd : Azure Container Registry-hitelesítés szolgáltatásnevek használatával.
Felhasználók és szolgáltatások megkülönböztetése
Minden alkalommal, amikor engedélyeket alkalmazunk, ajánlott eljárás, ha egy személy vagy szolgáltatás számára a lehető legkorlátosabb engedélyeket biztosítjuk egy feladat elvégzéséhez. Az alábbi engedélykészletek olyan képességeket jelölnek, amelyeket az emberek és a fej nélküli szolgáltatások használhatnak.
CI/CD-megoldások
A CI/CD-megoldások parancsainak automatizálása docker build
esetén képességekre van szükség docker push
. Ezekhez a fej nélküli szolgáltatási forgatókönyvekhez javasoljuk, hogy rendelje hozzá az AcrPush szerepkört. Ez a szerepkör a szélesebb körű közreműködői szerepkörrel ellentétben megakadályozza, hogy a fiók más beállításjegyzék-műveleteket végezzen, vagy hozzáférjen az Azure Resource Managerhez.
Tároló gazdagépcsomópontjai
Hasonlóképpen a tárolókat futtató csomópontoknak is szükségük van az AcrPull szerepkörre, de nem igényelnek olvasói képességeket.
Visual Studio Code Docker-bővítmény
Az olyan eszközökhöz, mint a Visual Studio Code Docker-bővítmény, további erőforrás-szolgáltatói hozzáférés szükséges az elérhető Azure-tárolóregisztrációs adatbázisok listázásához. Ebben az esetben biztosítson hozzáférést a felhasználóknak az Olvasó vagy a Közreműködő szerepkörhöz. Ezek a szerepkörök lehetővé teszik docker pull
a , docker push
, az acr list
, az acr build
és egyéb képességeket.
Hozzáférés a Resource Managerhez
Azure Resource Manager-hozzáférés szükséges az Azure Portalhoz és a beállításjegyzék-kezeléshez az Azure CLI-vel. Ha például a parancs használatával szeretné lekérni a az acr list
regisztrációs listák listáját, szüksége van erre az engedélykészletre.
Beállításjegyzék létrehozása és törlése
Az Azure-tárolóregisztrációs adatbázisok létrehozásának és törlésének lehetősége.
Kép leküldése
A rendszerképek docker push
vagy egy másik támogatott összetevő , például a Helm-diagramok leküldése a beállításjegyzékbe. Hitelesítést igényel a beállításjegyzékben az engedélyezett identitás használatával.
Lekéréses kép
A nem docker pull
karanténba helyezett rendszerképek, vagy egy másik támogatott összetevő , például egy Helm-diagram lekérése a beállításjegyzékből. Hitelesítést igényel a beállításjegyzékben az engedélyezett identitás használatával.
Képadatok törlése
Tárolólemezképek vagy más támogatott összetevők, például Helm-diagramok törlése a beállításjegyzékből.
Szabályzatok módosítása
A szabályzatok beállításjegyzékben való konfigurálásának lehetősége. A szabályzatok közé tartozik a képtisztítás, a karantén engedélyezése és a képaláírás.
Képek aláírása
A rendszerképek aláírásának képessége, általában egy automatizált folyamathoz rendelve, amely szolgáltatásnevet használna. Ez az engedély általában leküldéses képpel van kombinálva, így lehetővé teszi a megbízható rendszerképek beállításjegyzékbe való leküldését. További információ: Tartalommegbízhatóság az Azure Container Registryben.
Egyéni szerepkörök
Más Azure-erőforrásokhoz hasonlóan egyéni szerepköröket is létrehozhat részletes engedélyekkel az Azure Container Registryhez. Ezután rendelje hozzá az egyéni szerepköröket azokhoz a felhasználókhoz, szolgáltatásnevekhez vagy más identitásokhoz, amelyeknek egy beállításjegyzékkel kell kommunikálniuk.
Az egyéni szerepkörökre vonatkozó engedélyek meghatározásához tekintse meg a Microsoft.ContainerRegistry-műveletek listáját, tekintse át a beépített ACR-szerepkörök engedélyezett műveleteit, vagy futtassa a következő parancsot:
az provider operation show --namespace Microsoft.ContainerRegistry
Egyéni szerepkör definiálásához tekintse meg az egyéni szerepkör létrehozásának lépéseit.
Feljegyzés
Az Azure Resource Manager privát kapcsolattal konfigurált bérlőkben az Azure Container Registry támogatja az egyéni szerepkörökhöz hasonló Microsoft.ContainerRegistry/*/read
helyettesítő Microsoft.ContainerRegistry/registries/*/write
műveleteket, így hozzáférést biztosít az összes egyező művelethez. Arm privát kapcsolat nélküli bérlőkben egyéni szerepkörben adja meg az összes szükséges beállításjegyzék-műveletet.
Példa: Egyéni szerepkör képek importálásához
Az alábbi JSON például meghatározza az egyéni szerepkörök minimális műveleteit, amelyek lehetővé teszik a rendszerképek beállításjegyzékbe való importálását.
{
"assignableScopes": [
"/subscriptions/<optional, but you can limit the visibility to one or more subscriptions>"
],
"description": "Can import images to registry",
"Name": "AcrImport",
"permissions": [
{
"actions": [
"Microsoft.ContainerRegistry/registries/push/write",
"Microsoft.ContainerRegistry/registries/pull/read",
"Microsoft.ContainerRegistry/registries/read",
"Microsoft.ContainerRegistry/registries/importImage/action"
],
"dataActions": [],
"notActions": [],
"notDataActions": []
}
],
"roleType": "CustomRole"
}
Egyéni szerepkör JSON-leírással történő létrehozásához vagy frissítéséhez használja az Azure CLI-t, az Azure Resource Manager-sablont, az Azure PowerShellt vagy más Azure-eszközöket. Egyéni szerepkörök szerepkör-hozzárendeléseinek hozzáadása vagy eltávolítása ugyanúgy, mint a beépített Azure-szerepkörök szerepkör-hozzárendeléseinek kezelése.
Következő lépések
További információ az Azure-szerepkörök Azure-identitáshoz való hozzárendeléséről az Azure Portal, az Azure CLI, az Azure PowerShell vagy más Azure-eszközök használatával.
További információ az Azure Container Registry hitelesítési lehetőségeiről.
Megtudhatja, hogyan engedélyezheti az adattár hatókörű engedélyeit egy tárolóregisztrációs adatbázisban.