Microsoft AZ-400: Zarządzanie pakietami i artefaktami — Przewodnik do nauki

Część Microsoft DevOps Engineer Expert AZ-400 — Przewodnik do nauki. Ćwicz ze zweryfikowanymi odpowiedziami w centrum egzaminów Microsoft, albo rozwiąż testy na czas na ExamRoll.io.

Przegląd

Zarządzanie pakietami jest podstawą powtarzalnych kompilacji, niezawodnych wdrożeń i bezpiecznych łańcuchów dostaw w Azure DevOps. Azure Artifacts centralizuje przechowywanie pakietów i zarządzanie nimi w różnych ekosystemach — NuGet, npm, Maven, Gradle i Universal packages — jednocześnie umożliwiając buforowanie z nadrzędnych publicznych rejestrów oraz szczegółową kontrolę nad promocją, retencją i uprawnieniami. W połączeniu z automatyzacją wersjonowania semantycznego oraz narzędziami do zabezpieczeń i zgodności, pozwala na standaryzację sposobu, w jaki wewnętrzne i zewnętrzne zależności są tworzone, odnajdywane, zatwierdzane i używane na dużą skalę.

Podstawowe koncepcje Azure Artifacts

Kanał (feed) jest jednostką przechowywania i kontroli dostępu dla pakietów. Zespoły zazwyczaj organizują kanały według produktu, platformy lub granicy zaufania (np. jeden kanał dla wszystkich publicznych zależności OSS poprzez źródła nadrzędne, jeden dla współdzielonych bibliotek wewnętrznych i jeden na każdy produkt). Kanały obsługują wiele typów pakietów, z których każdy ma własne narzędzia klienckie.

Widoki (views) implementują model promocji z bramkami w ramach jednego kanału:

Źródła nadrzędne (upstream sources) łączą kanał z publicznymi rejestrami (NuGet.org, npmjs.com, Maven Central). Gdy są włączone, deweloperzy rozwiązują publiczne zależności za pośrednictwem Twojego kanału. Azure Artifacts w sposób przezroczysty pośredniczy i buforuje dokładnie te wersje, które są używane, poprawiając niezawodność, umożliwiając scenariusze w środowiskach odizolowanych (air-gapped) i pozwalając później na „zamrożenie” dostaw poprzez wyłączenie pobierania nowych wersji ze źródeł nadrzędnych. Możesz określić, które źródła nadrzędne są włączone dla danego kanału, aby spełnić wymogi polityki.

Retencja jest egzekwowana w celu zmniejszenia kosztów przechowywania, przy jednoczesnym zachowaniu tego, co istotne. Zdefiniuj polityki, aby zachować N najnowszych wersji każdego pakietu, przechowywać tylko wersje promowane do widoku release i automatycznie usuwać stare wersje prerelease. Przypinaj konkretne wersje, aby wyłączyć je z procesu czyszczenia (np. te osadzone w długo utrzymywanej gałęzi produktu). Dostosuj okna retencji do wymagań audytu i wycofywania zmian, aby zrównoważyć możliwość śledzenia z kosztami przechowywania.

Uprawnienia kanału są zgodne z zasadą najmniejszych uprawnień:

Zarządzanie ekosystemami pakietów

NuGet (dotnet/C#)

npm (JavaScript/TypeScript)

Maven i Gradle (Java/Kotlin)

Universal packages (obiekty binarne, skrypty, modele)

Kontrole Bezpieczeństwa i Zgodności

Skanowanie podatności musi być wymuszane w momencie commita i budowania. Zintegruj narzędzia, które identyfikują zależności ze znanymi podatnościami i dostarczają wskazówek dotyczących aktualizacji. W wielu środowiskach Azure DevOps, SonarQube jest używany jako część strategii bramek jakości (quality gates) do oznaczania problemów, włączając w to reguły ujawniające ryzyko związane z zależnościami; można go uzupełnić dedykowanymi narzędziami SCA (np. Snyk, Mend/WhiteSource lub Black Duck) w celu uzyskania pełniejszego pokrycia CVE w różnych ekosystemach. Dla .NET, dotnet list package --vulnerable, a dla npm, npm audit mogą dostarczyć dodatkowych sygnałów; dla Javy, OWASP Dependency-Check można dodać jako krok w procesie budowania.

Zgodność z licencjami jest egzekwowana poprzez skanowanie SBOM-ów lub manifestów w odniesieniu do zatwierdzonej listy dozwolonych licencji. Black Duck jest często dodawany do Azure Pipelines, aby blokować buildy w przypadku wykrycia zastrzeżonych licencji. Przechowuj raporty ze skanowania jako artefakty pipeline’u i dołączaj je do wydań (releases) w celach audytowych.

Dozwolone/blokowane pakiety najlepiej jest implementować jako politykę, a nie jako wyjątki ad hoc:

Audyt i ład (governance) zyskują dzięki scentralizowanym feedom z buforowaniem z nadrzędnych źródeł (upstream caching): zyskujesz pojedynczy punkt kontrolny dla przychodzących pakietów, niezmienne historie i spójne pochodzenie (provenance) na potrzeby generowania SBOM.

Automatyzacja Wersjonowania i Ekonomia Retencji

Wersjonowanie semantyczne (Semantic Versioning) jest najłatwiejsze do utrzymania dzięki automatyzacji:

Zarządzanie retencją i kosztami przechowywania wymaga proaktywnej polityki:

Specyfika nadrzędnych źródeł (upstream):

### Opis praktycznego problemu

Firma Adobe musi ustandaryzować zarządzanie pakietami w wielu chmurach i językach, jednocześnie zmniejszając liczbę awarii spowodowanych niestabilnością publicznych rejestrów i egzekwując polityki licencyjne. Zespoły publikują wewnętrzne artefakty NuGet, npm i Maven oraz udostępniają duże, wielojęzyczne narzędzia CLI.

  1. Ustanowienie scentralizowanych źródeł (feeds) i źródeł nadrzędnych (upstreams)
  1. Konfiguracja konsumpcji przez klientów za pomocą widoków (views)
  1. Wdrożenie publikacji z wersjonowaniem semantycznym
  1. Zabezpieczenie uwierzytelnionych źródeł (feeds) i doświadczenia deweloperskiego (developer experience)
  1. Egzekwowanie polityki podatności i licencji
  1. Kontrola ruchu przychodzącego i zamrażanie w razie potrzeby
  1. Zastosowanie retencji i przypinania (pinning)
  1. Delegowanie dostępu z najmniejszymi uprawnieniami
  1. Pakiety uniwersalne (Universal packages) dla narzędzi wielojęzykowych
  1. Mierz i iteruj

Monitorowanie · Wszystkie domeny · Planowanie zwinne i zarządzanie pracą

Przećwicz te pytania → · Testy na czas na ExamRoll.io →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Zdaj egzamin →

Przeglądaj Microsoft →

Related guides

Dostęp all-in-one

Jedna subskrypcja. Każdy egzamin.

Każdy plan odblokowuje nieograniczone wyszukiwanie odpowiedzi, testy praktyczne, wyjaśnienia AI i pełną bibliotekę zasobów — w ponad 20 językach.

Miesięczny
24.87
Just €0.83/day
Wszystko w cenie:
  • Nieograniczone wyszukiwanie odpowiedzi
  • Nieograniczone testy praktyczne
  • Wyjaśnienia wspomagane AI
  • Pełna biblioteka zasobów
  • Ponad 20 języków
  • Cotygodniowe aktualizacje treści
  • Nagrody i polecenia
  • Priorytetowe wsparcie
Rozpocznij bezpłatny okres próbny

Karta kredytowa nie jest wymagana*

Najlepsza wartość
12 miesięcy
179.87
Just €0.49/daySave 40%
Wszystko w cenie:
  • Nieograniczone wyszukiwanie odpowiedzi
  • Nieograniczone testy praktyczne
  • Wyjaśnienia wspomagane AI
  • Pełna biblioteka zasobów
  • Ponad 20 języków
  • Cotygodniowe aktualizacje treści
  • Nagrody i polecenia
  • Priorytetowe wsparcie
Rozpocznij bezpłatny okres próbny

Karta kredytowa nie jest wymagana*

✓ Plan darmowy w zestawie · ✓ Anuluj w dowolnym momencie · ✓ Wszystkie plany odblokowują pełny produkt