Share via


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 checkoutuses 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 checkoutuses 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-tailspinakkor ennek a fióknak a neve Project 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, SpaceGameWebakkor ennek a fióknak a neve SpaceGameWeb 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.

  1. A FabrikamFiber projektben keresse meg a Projektbeállítások, Engedélyek lehetőséget.

    Képernyőkép a projektbeállítások konfigurálásáról.

  2. Hozzon létre egy külső projektek nevű új csoportot, és adja hozzá a SpaceGameWeb Build Service-fiókot. Képernyőkép egy új biztonsági csoport létrehozásáról.

  3. 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.

    Képernyőkép a SpaceGameWeb projekt hatókörű build identitásfelhasználójának kiválasztásáról.

  4. Adjon engedélyt a felhasználó projektszintű információinak megtekintésére.

    Képernyőkép a felhasználó projektszintű információnézeti engedélyének megadásáról.

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 FabrikamFiberfabrikam-tailspin/FabrikamFiber elérésére.

  1. Kövesse az alábbi lépéseket, hogy engedélyt adjon a SpaceGameWeb projekt hatókörébe tartozó build identitásának a FabrikamFiber projekthez való hozzáféréshez.

  2. A FabrikamFiber projektben keresse meg a Projektbeállítások, Adattárak, FabrikamFiber lehetőséget.

    Adattár-hozzáférés konfigurálása.

  1. Válassza ki az ikont+, kezdje el beírni a SpaceGameWeb nevet, és válassza a SpaceGameWeb Build Service-fiókot.

    Felhasználó hozzáadása az adattárhoz való hozzáféréshez.

  1. Kezdje el beírni a SpaceGameWeb nevet, és válassza a SpaceGameWeb Build Service-fiókot.

    Képernyőkép arról, hogyan vehet fel felhasználót az adattárhoz való hozzáféréshez.

  1. Olvasási engedélyek megadása a felhasználó számára.

    Képernyőkép az adattárengedélyek konfigurálásáról.

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.

  1. Kövesse az alábbi lépéseket, hogy engedélyt adjon a SpaceGameWeb projekt hatókörébe tartozó build identitásának a FabrikamFiber projekthez való hozzáféréshez.

  2. Konfigurálja a felhasználó kívánt engedélyeit.

    Felhasználói engedélyek konfigurálása.

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.