Hozzáférési adattárak, összetevők és egyéb erőforrások
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Futásidőben a folyamat minden egyes feladata hozzáférhet az Azure DevOps egyéb erőforrásaihoz. Egy feladat például a következő lehet:
- Forráskód megtekintése Git-adattárból
- Címke hozzáadása az adattárhoz
- Hírcsatorna elérése az Azure Artifactsben
- Naplók feltöltése az ügynökből a szolgáltatásba
- Teszteredmények és egyéb összetevők feltöltése az ügynökből a szolgáltatásba
- Munkaelem frissítése
Az Azure Pipelines feladat-hozzáférési jogkivonatokkal végzi el ezeket a feladatokat. A feladat-hozzáférési jogkivonatok olyan biztonsági jogkivonatok, amelyeket az Azure Pipelines dinamikusan hoz létre minden feladathoz futásidőben. Az az ügynök, amelyen a feladat fut, a feladat hozzáférési jogkivonatával fér hozzá ezekhez az erőforrásokhoz az Azure DevOpsban. Szabályozhatja, hogy a folyamat mely erőforrásokhoz rendelkezik hozzáféréssel, ha azt szabályozza, hogy a feladatok hozzáférési jogkivonatai hogyan kapják meg az engedélyeket.
A jogkivonat engedélyei (a) feladat-engedélyezési hatókörből és (b) a projekt- vagy gyűjtemény-összeállítási szolgáltatásfiókon beállított engedélyekből származnak.
Feladat-engedélyezési hatókör
Beállíthatja, hogy a feladat engedélyezési hatóköre gyűjtemény vagy projekt legyen. A hatókör gyűjteményre állításával lehetővé teszi, hogy a folyamatok hozzáférjenek a gyűjtemény vagy a szervezet összes adattárához. A hatókör projektre állításával úgy dönt, hogy csak azokhoz az adattárakhoz korlátozza a hozzáférést, amelyek ugyanabban a projektben találhatók, mint a folyamat.
A feladat-engedélyezési hatókör a teljes Azure DevOps-szervezethez vagy egy adott projekthez beállítható.
Feljegyzés
Az Azure DevOps Server 2020-ban a feladatok engedélyezési hatókörének korlátozása az aktuális projektre csak YAML-folyamatokra és klasszikus buildfolyamatokra vonatkozik. Ez nem vonatkozik a klasszikus kiadási folyamatokra. A klasszikus kiadási folyamatok mindig projektgyűjtemény-hatókörrel futnak.
A szervezet feladat-engedélyezési hatókörének beállítása:
- Lépjen a szervezeti beállítások lapjára az Azure DevOps felhasználói felületén.
- Válassza Gépház a Folyamatok területen.
- A tevékenységengedélyezési hatókör korlátozása az aktuális projektre a hatókör projektre való korlátozásához. Ez az ajánlott beállítás, mivel növeli a folyamatok biztonságát.
Feladat-engedélyezési hatókör beállítása egy adott projekthez:
- Lépjen a projektbeállítások lapjára az Azure DevOps felhasználói felületén.
- Válassza Gépház a Folyamatok területen.
- A tevékenységengedélyezési hatókör korlátozása az aktuális projektre a hatókör projektre való korlátozásához. Ez az ajánlott beállítás, mivel növeli a folyamatok biztonságát.
- Ha minden projekthez szervezeti szinten szeretné beállítani a feladat-engedélyezési hatókört, válassza a Szervezeti beállítások>folyamatok> Gépház lehetőséget.
- Ha meg szeretné adni egy adott projekt feladat-engedélyezési hatókörét, válassza a Project settings>Pipelines> Gépház lehetőséget.
Engedélyezze az alábbi beállítások valamelyikét. Ezeknek a beállításoknak a engedélyezése ajánlott, mivel növeli a folyamatok biztonságát.
- A feladat engedélyezési hatókörének korlátozása a nem kiadási folyamatok aktuális projektjeire – Ez a beállítás a YAML-folyamatokra és a klasszikus buildelési folyamatokra vonatkozik, és nem vonatkozik a klasszikus kiadási folyamatokra.
- A feladat engedélyezési hatókörének korlátozása a kiadási folyamatok aktuális projektjeire – Ez a beállítás csak a klasszikus kiadási folyamatokra vonatkozik.
Feljegyzés
Ha a hatókör szervezeti szintű projektre van beállítva, nem módosíthatja a hatókört az egyes projektekben.
Fontos
Ha a hatókör nincs korlátozva sem a szervezet, sem a projekt szintjén, akkor a YAML-folyamat összes feladata kap egy gyűjtemény hatókörű feladathozzáférési jogkivonatot. Más szóval a folyamatnak hozzáférése van a szervezet bármely projektjének adattárához. Ha egy támadó egyetlen projekt egyetlen folyamatához tud hozzáférni, akkor hozzáférhet a szervezet bármely adattárához. Ezért javasoljuk, hogy a hatókört a legmagasabb szinten (szervezeti beállítások) korlátozza annak érdekében, hogy a támadás egyetlen projektre legyen korlátozva.
Ha az Azure DevOps Server 2019-et használja, akkor az összes YAML-feladat a gyűjteményre beállított feladat-engedélyezési hatókörrel fut. Más szóval ezek a feladatok hozzáférhetnek a projektgyűjtemény összes adattárához. Ezt nem módosíthatja az Azure DevOps Server 2019-ben.
A YAML-folyamatok nem érhetők el a TFS-ben.
Feljegyzés
Ha a folyamat nyilvános projektben van, akkor a feladat engedélyezési hatóköre automatikusan a projektre korlátozódik, függetlenül attól, hogy milyen beállításokat konfigurál. A nyilvános projektek feladatai csak a projekten belül férhetnek hozzá az erőforrásokhoz, például a buildelési összetevőkhöz vagy a tesztelési eredményekhez, a szervezet más projektjeiből nem.
A feladat engedélyezési hatókörének korlátozása a hivatkozott Azure DevOps-adattárakra
Az előző szakaszban ismertetett feladat-engedélyezési hatókör-beállítások mellett az Azure Pipelines az Azure DevOps-adattárak beállítására hivatkozó korlátozott feladat-engedélyezési hatókört is biztosít.
A folyamatok az engedélyezett projektek bármely Azure DevOps-adattárához hozzáférhetnek, kivéve, ha a feladat engedélyezési hatókörének korlátozása a hivatkozott Azure DevOps-adattárakra engedélyezve van. Ha ez a beállítás engedélyezve van, az összes folyamat hozzáférési hatókörét csak azokat az Azure DevOps-adattárakat csökkentheti, amelyekre kifejezetten hivatkozik az adattárat használó folyamatfeladat egy checkout
uses
lépése vagy utasítása.
További információ: Azure Repos Git-adattárak – A feladatok engedélyezési hatókörének korlátozása a hivatkozott Azure DevOps-adattárakra.
Adattárakhoz való hozzáférés védelme YAML-folyamatokban
Az előző szakaszban ismertetett feladat-engedélyezési hatókörbeállítások mellett az Azure Pipelines a YAML-folyamatok beállításában biztosít védelmet az adattárakhoz .
A folyamatok az engedélyezett projektek bármely Azure DevOps-adattárához hozzáférhetnek, kivéve, ha engedélyezve van a YAML-folyamatok adattáraihoz való hozzáférés védelme. Ha ez a beállítás engedélyezve van, az összes folyamat hozzáférési hatókörét csak azokat az Azure DevOps-adattárakat csökkentheti, amelyekre kifejezetten hivatkozik az adattárat használó folyamatfeladat egy checkout
uses
lépése vagy utasítása.
További információ: Azure Repos Git-adattárak – Az adattárakhoz való hozzáférés védelme YAML-folyamatokban.
Fontos
A YAML-folyamatok adattáraihoz való hozzáférés alapértelmezés szerint engedélyezve van a 2020 májusa után létrehozott új szervezetek és projektek számára.
Hatókörön belüli buildidentitások
Az Azure DevOps két beépített identitást használ a folyamatok végrehajtásához.
- Gyűjtemény hatókörű identitás, amely hozzáféréssel rendelkezik a gyűjtemény összes projektéhez (vagy az Azure DevOps Services szervezetéhez)
- Projekt hatókörű identitás, amely egyetlen projekthez rendelkezik hozzáféréssel
Ezek az identitások olyan engedélyek, amelyek a buildelési/kiadási végrehajtási idő tevékenységeinek végrehajtásához szükségesek az Azure DevOps-rendszerbe való visszahíváskor. Vannak beépített alapértelmezett engedélyek, és szükség szerint saját engedélyeket is kezelhet.
A gyűjtemény hatókörébe tartozó identitásnév formátuma a következő:
Project Collection Build Service ({OrgName})
- Ha például a szervezet neve ,
fabrikam-tailspin
akkor ennek a fióknak a neveProject Collection Build Service (fabrikam-tailspin)
van.
A projekt hatókörébe tartozó identitásnév formátuma a következő:
{Project Name} Build Service ({Org Name})
- Ha például a szervezet neve
fabrikam-tailspin
és a projekt neve,SpaceGameWeb
akkor ennek a fióknak a neveSpaceGameWeb Build Service (fabrikam-tailspin)
van.
Alapértelmezés szerint a rendszer a gyűjtemény hatókörű identitást használja, kivéve, ha másként van konfigurálva az előző feladatengedélyezési hatókör szakaszban leírtak szerint.
A buildelési szolgáltatásfiók engedélyeinek kezelése
A projekt hatókörű hozzáférésének beállításának egyik eredménye lehet, hogy a projekt hatókörű identitása nem rendelkezik olyan erőforrásra vonatkozó engedélyekkel, amelyekkel a gyűjtemény hatóköre rendelkezik.
Előfordulhat, hogy módosítani szeretné a feladat-hozzáférési jogkivonat engedélyeit az alábbi helyzetekben:
- Azt szeretné, hogy a folyamat egy másik projektben lévő hírcsatornához férhessen hozzá.
- Azt szeretné, hogy a folyamat ne változtasd meg a kódokat az adattárban.
- Azt szeretné, hogy a folyamat ne hozzon létre munkaelemeket.
A feladat-hozzáférési jogkivonat engedélyeinek frissítése:
Először határozza meg a folyamat feladat-engedélyezési hatókörét. A feladat-engedélyezési hatókör megismeréséhez tekintse meg a fenti szakaszt. Ha a feladat engedélyezési hatóköre gyűjtemény, akkor a megfelelő buildszolgáltatás-fiók, amely az engedélyeket kezeli, a Project Collection Build Service (a gyűjtemény neve) lesz. Ha a feladat engedélyezési hatóköre projekt, akkor a buildszolgáltatás-fiók, amelyen az engedélyeket kezelni szeretné, a Saját projektnév buildszolgáltatás (a gyűjtemény neve) lesz.
A Project Collection buildszolgáltatás (a gyűjtemény neve) korlátozása vagy további hozzáférés biztosítása:
- Válassza a Biztonság kezelése lehetőséget a Folyamatok lap túlcsordulási menüjében.
- A Felhasználók területen válassza a Project Collection Build Service (a gyűjtemény neve) lehetőséget.
- Módosítsa a fiók folyamatokkal kapcsolatos engedélyeit.
- Keresse meg az Azure DevOps-szervezet szervezeti beállításait (vagy a projektgyűjtemény gyűjteménybeállításait).
- Válassza az Engedélyek lehetőséget a Biztonság területen.
- A Felhasználók lapon keresse meg a Project Collection buildszolgáltatást (az Ön gyűjteménynevét).
- Módosítsa a fiók nem folyamatokkal kapcsolatos engedélyeit.
- Mivel a Project Collection Build Service (a gyűjtemény neve) a szervezet vagy a gyűjtemény felhasználója, ezt a fiókot explicit módon hozzáadhatja bármely erőforráshoz – például egy Azure Artifacts-hírcsatornához.
A projektnév buildszolgáltatás (a gyűjtemény neve) korlátozása vagy további hozzáférés biztosítása:
- A buildszolgáltatás-fiók, amelyen kezelheti az engedélyeket, csak a folyamat egyszeri futtatása után jön létre. Győződjön meg arról, hogy már egyszer futtatta a folyamatot.
- Válassza a Biztonság kezelése lehetőséget a Folyamatok lap túlcsordulási menüjében.
- A Felhasználók területen válassza a Saját projektnév buildszolgáltatást (a gyűjtemény neve) lehetőséget.
- Módosítsa a fiók folyamatokkal kapcsolatos engedélyeit.
- Keresse meg az Azure DevOps-szervezet szervezeti beállításait (vagy a projektgyűjtemény gyűjteménybeállításait).
- Válassza az Engedélyek lehetőséget a Biztonság területen.
- A Felhasználók lapon keresse meg a Saját projektnév buildszolgáltatást (a gyűjtemény nevét).
- Módosítsa a fiók nem folyamatokkal kapcsolatos engedélyeit.
- Mivel az Ön projektnév buildszolgáltatása (a gyűjtemény neve) a szervezet vagy a gyűjtemény felhasználója, ezt a fiókot explicit módon hozzáadhatja bármely erőforráshoz – például egy Azure Artifacts-hírcsatornához.
Egy projekt engedélyeinek konfigurálása egy másik projekt elérésére ugyanabban a projektgyűjteményben
Ebben a példában a fabrikam-tailspin/SpaceGameWeb
projekt hatókörébe tartozó buildidentitás engedélyt kap a fabrikam-tailspin/FabrikamFiber
projekt eléréséhez.
A FabrikamFiber projektben keresse meg a Projektbeállítások, Engedélyek lehetőséget.
Hozzon létre egy külső projektek nevű új csoportot, és adja hozzá a SpaceGameWeb Build Service-fiókot.
Válassza a Felhasználók lehetőséget, kezdje el beírni a SpaceGameWeb nevet, és válassza ki a SpaceGameWeb Build Service-fiókot. Ha kezdetben nem látja a találatokat, válassza a Keresés kibontása lehetőséget.
Adjon engedélyt a felhasználó projektszintű információinak megtekintésére.
Példa – Engedélyek konfigurálása egy másik adattár elérésére ugyanabban a projektgyűjteményben
Ebben a példában a fabrikam-tailspin/SpaceGameWeb
projekt hatókörébe tartozó buildidentitás engedélyt kap a projekt adattárának FabrikamFiber
fabrikam-tailspin/FabrikamFiber
elérésére.
Kövesse az alábbi lépéseket, hogy engedélyt adjon a
SpaceGameWeb
projekt hatókörébe tartozó build identitásának aFabrikamFiber
projekthez való hozzáféréshez.A FabrikamFiber projektben keresse meg a Projektbeállítások, Adattárak, FabrikamFiber lehetőséget.
Válassza ki az ikont+, kezdje el beírni a SpaceGameWeb nevet, és válassza a SpaceGameWeb Build Service-fiókot.
Kezdje el beírni a SpaceGameWeb nevet, és válassza a SpaceGameWeb Build Service-fiókot.
Olvasási engedélyek megadása a felhasználó számára.
Példa – Engedélyek konfigurálása más erőforrások elérésére ugyanabban a projektgyűjteményben
Ebben a példában a fabrikam-tailspin/SpaceGameWeb
projekt hatókörébe tartozó buildidentitás engedélyt kap a fabrikam-tailspin/FabrikamFiber
projekt más erőforrásainak eléréséhez.
Kövesse az alábbi lépéseket, hogy engedélyt adjon a
SpaceGameWeb
projekt hatókörébe tartozó build identitásának aFabrikamFiber
projekthez való hozzáféréshez.Konfigurálja a felhasználó kívánt engedélyeit.
GYIK
Hogyan meghatározni a YAML-folyamat feladat-engedélyezési hatókörét?
- Ha a projekt nyilvános projekt, a feladat engedélyezési hatóköre minden más beállítástól függetlenül mindig projekt .
Az Azure DevOps Server 2019 összes YAML-folyamata gyűjtési feladat engedélyezési hatóköre alatt fut.
- Ellenőrizze a Folyamatbeállításokat az Azure DevOps Organization beállításai között:
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre engedélyezve van, akkor a hatókör projekt.
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre nincs engedélyezve, ellenőrizze a folyamatbeállításokat az Azure DevOps projektbeállításai között:
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre engedélyezve van, akkor a hatókör projekt.
- Ellenkező esetben a hatókör gyűjtemény.
- Ha a folyamat privát projektben található, ellenőrizze az Azure DevOps Organization beállításai között a folyamatbeállításokat:
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre a nem kiadási folyamatok esetében engedélyezve van, akkor a hatókör projekt.
- Ha nincs engedélyezve a feladat engedélyezési hatókörének korlátozása az aktuális projektre a nem kiadási folyamatok esetében, ellenőrizze a folyamatbeállításokat az Azure DevOps projektbeállításai között:
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre a nem kiadási folyamatok esetében engedélyezve van, akkor a hatókör projekt.
- Ellenkező esetben a hatókör gyűjtemény.
Hogyan meghatározni a klasszikus buildelési folyamat feladat-engedélyezési hatókörét?
- Ha a folyamat egy nyilvános projektben található, akkor a feladat engedélyezési hatóköre projekt, minden más beállítástól függetlenül.
- Nyissa meg a folyamat szerkesztőjében, és lépjen a Beállítások lapra.
- Ha a Build feladat engedélyezési hatóköre Aktuális projekt, akkor a hatókör projekt.
- Ellenkező esetben a hatókör gyűjtemény.
- Ellenőrizze a Folyamatbeállításokat az Azure DevOps Organization beállításai között:
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre engedélyezve van, akkor a hatókör projekt.
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre nincs engedélyezve, ellenőrizze a folyamatbeállításokat az Azure DevOps projektbeállításai között:
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre engedélyezve van, akkor a hatókör projekt.
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre nincs engedélyezve, nyissa meg a folyamat szerkesztőjében, és lépjen a Beállítások lapra.
- Ha a Build feladat engedélyezési hatóköre Aktuális projekt, akkor a hatókör projekt.
- Ellenkező esetben a hatókör gyűjtemény.
- Ha a folyamat privát projektben található, ellenőrizze az Azure DevOps Organization beállításai között a folyamatbeállításokat:
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre a nem kiadási folyamatok esetében engedélyezve van, akkor a hatókör projekt.
- Ha nincs engedélyezve a feladat engedélyezési hatókörének korlátozása az aktuális projektre a nem kiadási folyamatok esetében, ellenőrizze a folyamatbeállításokat az Azure DevOps projektbeállításai között:
- Ha a feladat engedélyezési hatókörének korlátozása az aktuális projektre a nem kiadási folyamatok esetében engedélyezve van, akkor a hatókör projekt.
- Ha a feladat engedélyezési hatókörének korlátozása a nem kiadási folyamatok aktuális projektjéhez nincs engedélyezve, nyissa meg a folyamat szerkesztőjében, és lépjen a Beállítások lapra.
- Ha a Build feladat engedélyezési hatóköre Aktuális projekt, akkor a hatókör projekt.
- Máskülönben a hatókör a gyűjtemény.
Új klasszikus folyamat létrehozásakor a feladat-engedélyezési hatókör az aktuális projektre van állítva, és a buildelési feladat engedélyezési hatóköre alapértelmezés szerint projektre van állítva.
Hogyan meghatározni a klasszikus kiadási folyamat feladatengedélyezési hatókörét?
Az Azure DevOps Server 2020-ban és az alatta lévő klasszikus kiadási folyamatok gyűjtemény hatókörrel futnak.
- Ha a folyamat egy nyilvános projektben található, akkor a feladat engedélyezési hatóköre projekt, minden más beállítástól függetlenül.
- Ha a folyamat privát projektben található, ellenőrizze az Azure DevOps Organization beállításai között a folyamatbeállításokat:
- Ha a projekt engedélyezési hatókörének korlátozása az aktuális projektre a kiadási folyamatok esetében engedélyezve van, akkor a hatókör projekt.
- Ha a projektengedélyezési hatókör korlátozása az aktuális projektre a kiadási folyamatok esetében nincs engedélyezve, ellenőrizze a Folyamatbeállításokat az Azure DevOps projektbeállításai között:
- Ha a projekt engedélyezési hatókörének korlátozása az aktuális projektre a kiadási folyamatok esetében engedélyezve van, akkor a hatókör projekt.
- Ellenkező esetben a hatókör gyűjtemény.