Megosztás a következőn keresztül:


Korlátozott hatáskörű API-kulcsok

Ha biztonságosabb környezetet szeretne biztosítani a NuGet csomagterjesztéséhez, hatókörök hozzáadásával átveheti az API-kulcsok irányítását.

Az API-kulcsok hatókörének biztosítása jobb vezérlést biztosít az API-k számára. Ön megteheti:

  • Hozzon létre több hatókörrel rendelkező API-kulcsot, amelyek különböző csomagokhoz használhatók különböző lejárati időkeretekkel.
  • Api-kulcsok biztonságos beszerzése.
  • A meglévő API-kulcsok szerkesztése a csomag alkalmazhatóságának módosításához.
  • A meglévő API-kulcsok frissítése vagy törlése anélkül, hogy más kulcsokkal akadályozni szeretné a műveleteket.

Miért támogatjuk a hatókörön belüli API-kulcsokat?

Támogatjuk az API-kulcsok hatóköreit, hogy részletesebb engedélyekkel rendelkezzen. Korábban a NuGet egyetlen API-kulcsot kínált egy fiókhoz, és ennek a megközelítésnek több hátránya is volt:

  • Egy API-kulcs az összes csomag vezérléséhez. Egyetlen API-kulccsal, amely az összes csomag kezelésére szolgál, nehéz biztonságosan megosztani a kulcsot, ha több fejlesztő is részt vesz a különböző csomagokban, és amikor közzétevői fiókot osztanak meg.
  • Minden engedély vagy nincs. Bárki, aki hozzáfér az API-kulcshoz, rendelkezik minden engedéllyel (közzététel, leküldés és eltávolítás a listáról) a csomagokon. Ez gyakran nem kívánatos több csapattal rendelkező környezetben.
  • Egyetlen hibapont. Az egyetlen API-kulcs egyben egyetlen meghibásodási pontot is jelent. Ha a kulcs sérült, a fiókhoz társított összes csomag veszélybe kerülhet. Az API-kulcs frissítése az egyetlen módja annak, hogy megszüntesse a szivárgást és elkerülje a CI/CD munkafolyamat megszakítását. Emellett előfordulhatnak olyan esetek is, amikor egy adott személy API-kulcsához való hozzáférését vissza szeretné vonni (például amikor egy alkalmazott elhagyja a szervezetet). Ma nincs tiszta módszer erre.

Hatókörrel rendelkező API-kulcsokkal megpróbáljuk elhárítani ezeket a problémákat, miközben biztosítjuk, hogy a meglévő munkafolyamatok egyike sem szakadjon meg.

API-kulcs beszerzése

  1. Jelentkezzen be nuget.org fiókjába , vagy hozzon létre egy fiókot , ha még nem rendelkezik ilyen fiókkal.

  2. Válassza ki a felhasználónevet a jobb felső sarokban, majd válassza az API-kulcsokat.

  3. Válassza a Létrehozás lehetőséget, és adja meg a kulcs nevét.

  4. A Hatókörök kiválasztása csoportban válassza a Push.

  5. A Csomagok kiválasztása>Globális minta mezőbe írja be: *.

  6. Válassza a Create gombot.

  7. Válassza a Másolás lehetőséget az új kulcs másolásához.

    Képernyőkép az új API-kulcsról a Másolás hivatkozással.

Fontos

  • Mindig tartsa titokban az API-kulcsot. Az API-kulcs olyan, mint egy jelszó, amely lehetővé teszi, hogy bárki kezelje a csomagokat az Ön nevében. Ha az API-kulcs véletlenül nyilvánosságra került, törölje vagy hozza létre újra.
  • Mentse a kulcsot biztonságos helyre, mert később nem másolhatja újra a kulcsot. Ha visszatér az API-kulcs lapjára, újra kell létrehoznia a kulcsot a másoláshoz. Az API-kulcsot akkor is eltávolíthatja, ha már nem szeretne csomagokat leküldni.

A hatókörkezelés lehetővé teszi külön API-kulcsok létrehozását különböző célokra. Minden kulcs lejárati időkeretet tartalmaz, és a kulcsot meghatározott csomagokra vagy glob-mintákra is alkalmazhatja. Minden kulcs adott műveletekhez van rendelve: új csomagok és csomagverziók közzététele, csak új csomagverziók közzététele vagy eltávolítás a listáról.

A hatókörkezeléssel API-kulcsokat hozhat létre a szervezet csomagjait kezelő különböző személyek számára, hogy csak a szükséges engedélyekkel rendelkezzenek.

Hatókörrel rendelkező API-kulcsok létrehozása

A követelményeknek megfelelően több API-kulcsot is létrehozhat. Az API-kulcsok egy vagy több csomagra alkalmazhatók, különböző hatókörökkel rendelkeznek, amelyek adott jogosultságokat biztosítanak, és lejárati dátummal rendelkeznek.

Az alábbi példában van egy Contoso service CI nevű API-kulcs, amely adott Contoso.Service csomagok leküldésére alkalmazható, és 365 napig érvényes. Ez egy tipikus forgatókönyv, amelyben az egyazon szervezet különböző csapatai különböző csomagokon dolgoznak, és a csapat tagjai kapják meg azt a kulcsot, amely csak az általuk használt csomaghoz biztosít nekik jogosultságokat. A lejárat mechanizmusként szolgál az elavult vagy elfelejtett kulcsok megelőzésére.

API-kulcsok létrehozása

Glob-minták használata

Ha több csomagon dolgozik, és nagy csomaglistával rendelkezik, dönthet úgy, hogy globbing mintákat használ a több csomag együttes kijelöléséhez. Ha például adott hatóköröket szeretne adni egy kulcsnak az összes olyan csomaghoz, amelynek az azonosítója kezdődikFabrikam.Service, ezt a fabrikam.service.* szövegmezőjében adhatja meg.

API-kulcsok létrehozása – 2

A glob-minták használata az API-kulcsengedélyek meghatározásához a glob-mintával egyező új csomagokra is vonatkozik. Ha például egy új, elnevezett Fabrikam.Service.Frameworkcsomagot próbál leküldni, ezt a korábban létrehozott kulccsal teheti meg, mivel a csomag megegyezik a glob mintával fabrikam.service.*.

API-kulcsok biztonságos beszerzése

A biztonság érdekében az újonnan létrehozott kulcs soha nem jelenik meg a képernyőn, és csak a Másolás gombbal érhető el. Hasonlóképpen, a kulcs nem érhető el a lap frissítése után.

API-kulcsok létrehozása – 3

Meglévő API-kulcsok szerkesztése

Előfordulhat, hogy a kulcsengedélyeket és a hatóköröket a kulcs módosítása nélkül is frissíteni szeretné. Ha egyetlen csomaghoz rendelkezik egy adott hatókörrel(ek) rendelkező kulccsal, akkor dönthet úgy, hogy ugyanazt a hatókört alkalmazza egy vagy több másik csomagra.

API-kulcsok létrehozása – 4

Meglévő API-kulcsok frissítése vagy törlése

A fiók tulajdonosa dönthet úgy, hogy frissíti a kulcsot, ebben az esetben az engedély (csomagokon), a hatókör és a lejárat változatlan marad, de a rendszer új kulcsot ad ki, így a régi kulcs használhatatlanná válik. Ez hasznos lehet az elavult kulcsok kezelésében, illetve az API-kulcsok szivárgásának lehetőségében.

API-kulcsok létrehozása – 5

Akkor is törölheti ezeket a kulcsokat, ha már nincs rájuk szükség. A kulcs törlése eltávolítja a kulcsot, és használhatatlanná teszi.

FAQs

Mi történik a régi (örökölt) API-kulccsal?

A régi API-kulcs (örökölt) továbbra is működik, és addig működik, amíg azt szeretné, hogy működjön. Ezek a kulcsok azonban kivonásra kerülnek, ha 365 napnál hosszabb ideig nem használták őket a csomagok leküldésére. További részletekért tekintse meg a lejáró API-kulcsok módosításait ismertető blogbejegyzést. A kulcs már nem frissíthető. Ehelyett törölnie kell az örökölt kulcsot, és létre kell hoznia egy új hatókörű kulcsot.

Megjegyzés:

Ez a kulcs az összes csomagra vonatkozó engedélyekkel rendelkezik, és soha nem jár le. Érdemes lehet törölni ezt a kulcsot, és új kulcsokat létrehozni hatókörön belüli engedélyekkel és határozott lejárattal.

Hány API-kulcsot tudok létrehozni?

Nincs korlátozva a létrehozható API-kulcsok száma. Azt javasoljuk azonban, hogy tartsa kezelhető számon, hogy ne legyen sok elavult kulcs, és ne tudja, hol és ki használja őket.

Törölhetem az örökölt API-kulcsomat, vagy megszüntethetem a használatot?

Igen. Törölheti az örökölt API-kulcsot, és valószínűleg törölnie kell.

Visszakaphatom a véletlenül törölt API-kulcsomat?

Nem. A törlés után csak új kulcsokat hozhat létre. A véletlenül törölt kulcsok helyreállítása nem lehetséges.

A régi API-kulcs továbbra is működik az API-kulcsok frissítésekor?

Nem. A kulcs frissítése után létrejön egy új kulcs, amelynek hatóköre, engedélye és lejárata megegyezik a régiével. A régi kulcs már nem létezik.

Adhatok további engedélyeket egy meglévő API-kulcshoz?

A hatókör nem módosítható, de szerkesztheti azt a csomaglistát, amelyre alkalmazható.

Honnan tudhatom, hogy valamelyik kulcsom lejárt vagy le fog járni?

Ha bármelyik kulcs lejár, a lap tetején található figyelmeztető üzenetben értesítjük. A kulcs lejárata előtt tíz nappal figyelmeztető e-mailt is küldünk a fióktulajdonosnak, hogy ön előre eljárjon rajta.