Zarządzanie tożsamościami i dostępem
W tym artykule opisano zagadnienia dotyczące projektowania i zalecenia dotyczące zarządzania tożsamościami i dostępem. Koncentruje się ona na wdrażaniu platformy analizy w skali chmury na platformie Microsoft Azure. Ponieważ analiza w skali chmury jest składnikiem o znaczeniu krytycznym, podczas projektowania rozwiązania należy postępować zgodnie ze wskazówkami dotyczącymi obszarów projektowych strefy docelowej platformy Azure.
W tym artykule omówiono zagadnienia i zalecenia dotyczące stref docelowych platformy Azure. Aby uzyskać więcej informacji, zobacz Obszar projektowania zarządzania tożsamościami i dostępem.
Projekt strefy docelowej danych
Analiza w skali chmury obsługuje model kontroli dostępu przy użyciu tożsamości Microsoft Entra. Model używa kontroli dostępu opartej na rolach (Azure RBAC) i list kontroli dostępu.
Przejrzyj działania związane z administracją i zarządzaniem platformą Azure wykonywane przez zespoły. Oceń analitykę w skali chmury w Azure. Określ najlepszą możliwą dystrybucję obowiązków w organizacji.
Przypisania ról
Aby tworzyć, dostarczać i obsługiwać produkty danych autonomicznie w ramach platformy danych, zespoły aplikacji danych wymagają kilku praw dostępu w środowisku platformy Azure. Należy pamiętać, że należy używać różnych modeli dostępu do środowisk programistycznych i wyższych. Użyj grup zabezpieczeń, gdy jest to możliwe, aby zmniejszyć liczbę przypisań ról i uprościć proces zarządzania i przeglądu praw RBAC. Ten krok jest kluczowy z powodu ograniczonej liczby przypisań ról, jakie można utworzyć dla każdej subskrypcji.
Środowisko programistyczne powinno być dostępne dla zespołu deweloperów i ich odpowiednich tożsamości użytkowników. Ten dostęp umożliwia im szybsze iterowanie, poznawanie niektórych możliwości w usługach platformy Azure i efektywne rozwiązywanie problemów. Dostęp do środowiska deweloperskiego może pomóc w opracowaniu lub ulepszeniu infrastruktury jako kodu i innych artefaktów kodu.
Po potwierdzeniu, że implementacja działa zgodnie z oczekiwaniami w środowisku projektowym, można ją wdrożyć w sposób ciągły w wyższych środowiskach. Wyższe środowiska, takie jak testowanie i produkcja, powinny być zablokowane dla zespołu aplikacji danych. Tylko jednostka usługi powinna mieć dostęp do tych środowisk. W związku z tym wszystkie wdrożenia muszą być uruchamiane za pośrednictwem tożsamości usługi przy użyciu potoków CI/CD (ciągła integracja i dostarczanie). W środowisku projektowym nadaj uprawnienia dostępu zarówno podmiotowi usługi, jak i tożsamościom użytkowników. W wyższych środowiskach ogranicz prawa dostępu tylko do tożsamości jednostki usługi.
Aby utworzyć zasoby i przypisania ról między zasobami w grupach zasobów aplikacji danych, musisz przyznać uprawnienia Contributor
i User Access Administrator
. Te prawa umożliwiają zespołom tworzenie i kontrolowanie usług w ich środowisku w ramach granic Azure Policy.
Aby zmniejszyć ryzyko eksfiltracji danych, najlepsze rozwiązania dotyczące analizy w chmurze umożliwiają korzystanie z prywatnych punktów końcowych. Zespół platformy Azure blokuje inne opcje łączności za pośrednictwem zasad, dlatego zespoły aplikacji danych potrzebują praw dostępu do udostępnionej sieci wirtualnej strefy docelowej danych. Ten dostęp jest niezbędny do skonfigurowania niezbędnej łączności sieciowej dla usług, które planują używać.
Aby postępować zgodnie z zasadą najniższych uprawnień, należy unikać konfliktów między różnymi zespołami aplikacji danych i mieć wyraźne rozdzielenie zespołów. Najlepsze rozwiązania dotyczące analizy w skali chmury polegają na utworzeniu dedykowanej podsieci dla każdego zespołu aplikacji danych i przypisaniu roli Network Contributor
dla tej podsieci lub zakresu zasobów podrzędnych. To przypisanie roli umożliwia zespołom dołączanie do podsieci przy użyciu prywatnych punktów końcowych.
Te dwa pierwsze przypisania ról umożliwiają samoobsługowe wdrażanie usług danych w tych środowiskach. Aby rozwiązać problemy związane z zarządzaniem kosztami, organizacje powinny dodać tag centrum kosztów do grup zasobów, aby umożliwić naliczanie międzydziałowe i rozproszoną odpowiedzialność za koszty. Takie podejście zwiększa świadomość w zespołach i pomaga w podejmowaniu świadomych decyzji dotyczących wymaganych jednostek SKU i warstw usług.
Aby umożliwić samoobsługowe korzystanie z innych zasobów udostępnionych w strefie docelowej danych, wymagane jest kilka dodatkowych przypisań ról. Jeśli wymagany jest dostęp do środowiska usługi Azure Databricks, organizacje powinny korzystać z synchronizacji SCIM z identyfikatora Entra firmy Microsoft w celu zapewnienia dostępu. Ten mechanizm synchronizacji jest ważny, ponieważ automatycznie synchronizuje użytkowników i grupy z identyfikatora Entra firmy Microsoft z płaszczyzną danych usługi Azure Databricks. Automatycznie usuwa również prawa dostępu, gdy osoba opuszcza organizację lub firmę. W usłudze Azure Databricks nadaj zespołom aplikacji danych Can Restart
prawa dostępu do wstępnie zdefiniowanego klastra, aby mogli uruchamiać obciążenia w obszarze roboczym.
Poszczególne zespoły wymagają dostępu do konta usługi Microsoft Purview w celu odnajdywania zasobów danych w odpowiednich strefach docelowych danych. Zespoły często muszą edytować katalogowane zasoby danych, które są właścicielami, aby udostępnić dodatkowe informacje, takie jak informacje kontaktowe właścicieli danych i ekspertów. Zespoły wymagają również możliwości zapewnienia bardziej szczegółowych informacji o tym, co każda kolumna w zestawie danych opisuje i zawiera.
Podsumowanie wymagań dotyczących systemu kontroli dostępu opartego na rolach
Aby zautomatyzować wdrażanie stref docelowych danych, wymagane są następujące role:
Nazwa roli
Opis
Zakres
Wdróż wszystkie prywatne strefy DNS dla wszystkich usług danych w jednej subskrypcji i grupie zasobów. Jednostka usługi musi być Private DNS Zone Contributor
w globalnej grupie zasobów DNS utworzonej podczas wdrażania strefy docelowej zarządzania danymi. Ta rola jest potrzebna do wdrożenia rekordów A dla prywatnych punktów końcowych.
(Zakres grupy zasobów) /subscriptions/{{dataManagement}subscriptionId}/resourceGroups/{resourceGroupName}
Aby skonfigurować peering sieci wirtualnych między siecią strefy lądowania danych a siecią strefy lądowania zarządzania danymi, jednostka usługi potrzebuje praw dostępu Network Contributor
w grupie zasobów zdalnej sieci wirtualnej.
(Zakres grupy zasobów) /subscriptions/{{dataManagement}subscriptionId}/resourceGroups/{resourceGroupName}
To uprawnienie jest wymagane do udostępniania własnego środowiska Integration Runtime, które jest wdrażane w grupie zasobów integration-rg
z innymi fabrykami danych. Wymagane jest również przypisanie dostępu tożsamości zarządzanym usług Azure Data Factory i Azure Synapse Analytics na odpowiednich systemach plików kont magazynu.
(Zakres zasobów) /subscriptions/{{dataLandingZone}subscriptionId}
Notatka
W scenariuszu produkcyjnym można zmniejszyć liczbę przypisań ról. Rola Network Contributor
jest wymagana tylko do skonfigurowania komunikacji równorzędnej sieci wirtualnej między strefą docelową zarządzania danymi a strefą docelową danych. Bez tej roli rozpoznawanie nazw DNS kończy się niepowodzeniem. Ponadto ruch przychodzący i wychodzący jest odrzucany, ponieważ nie ma linii widzenia do usługi Azure Firewall.
Rola Private DNS Zone Contributor
nie jest wymagana, jeśli wdrożenie rekordów A DNS dla prywatnych punktów końcowych jest zautomatyzowane za pomocą zasad platformy Azure z efektem deployIfNotExists
. To samo dotyczy roli User Access Administrator
, ponieważ można zautomatyzować wdrażanie przy użyciu zasad deployIfNotExists
.
Przypisania ról dla produktów danych
Do wdrożenia produktu danych w strefie docelowej danych wymagane są następujące przypisania ról:
Nazwa roli
Opis
Zakres
Wdróż wszystkie prywatne strefy DNS dla wszystkich usług danych w jednej subskrypcji i grupie zasobów. Jednostka usługi musi być Private DNS Zone Contributor
w globalnej grupie zasobów DNS utworzonej podczas wdrażania strefy docelowej zarządzania danymi. Rola ta jest potrzebna do wdrożenia rekordów A dla odpowiednich prywatnych punktów końcowych.
(Zakres grupy zasobów) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Wdróż wszystkie usługi integracji danych strumieniowych w jednej grupie zasobów w subskrypcji strefy lądowania danych. Jednostka usługi wymaga przypisania roli Contributor
w tej grupie zasobów.
(Zakres grupy zasobów) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Aby wdrożyć prywatne punkty końcowe w określonej podsieci usługi Azure Private Link utworzonej podczas wdrażania strefy docelowej danych, jednostka usługi wymaga dostępu Network Contributor
w tej podsieci.
(Zakres zasobów podrzędnych) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName} /providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
Dostęp do innych zasobów
Poza platformą Azure zespoły aplikacji danych wymagają dostępu do repozytorium w celu przechowywania artefaktów kodu, efektywnej współpracy oraz wprowadzania aktualizacji i spójnych zmian w wyższych środowiskach poprzez CI/CD (Continuous Integration/Continuous Deployment). Należy podać tablicę projektu, aby umożliwić elastyczne programowanie, planowanie przebiegu, śledzenie zadań oraz zarządzanie opiniami użytkowników i żądaniami funkcji.
Aby zautomatyzować CI/CD, nawiąż połączenie z Azure. Ten proces odbywa się w większości usług za pośrednictwem jednostek usługi. Ze względu na to wymaganie zespoły muszą mieć dostęp do jednostki usługi, aby osiągnąć automatyzację w projekcie.
Zarządzanie dostępem do danych
Zarządzanie dostępem do danych przy użyciu grup firmy Microsoft Entra. Dodaj nazwy główne użytkowników lub nazwy główne usług do grup Microsoft Entra. Następnie dodaj te grupy do usług i przyznaj grupie uprawnienia. Takie podejście umożliwia precyzyjną kontrolę dostępu.
Aby uzyskać więcej informacji na temat zwiększania zabezpieczeń stref docelowych przeznaczonych do zarządzania danymi oraz stref docelowych danych służących do zarządzania infrastrukturą danych, zobacz Authentication for cloud-scale analytics in Azure.