Rejestrowanie aplikacji Entra firmy Microsoft i tworzenie jednostki usługi
W tym artykule dowiesz się, jak utworzyć aplikację Firmy Microsoft Entra i jednostkę usługi, która może być używana z kontrolą dostępu opartą na rolach (RBAC). Podczas rejestrowania nowej aplikacji w usłudze Microsoft Entra ID jednostka usługi jest tworzona automatycznie na potrzeby rejestracji aplikacji. Jednostka usługi jest tożsamością aplikacji w dzierżawie firmy Microsoft Entra. Dostęp do zasobów jest ograniczony przez role przypisane do jednostki usługi, zapewniając kontrolę nad tym, do których zasobów można uzyskiwać dostęp i na jakim poziomie. Ze względów bezpieczeństwa zawsze zaleca się używanie jednostek usługi z zautomatyzowanymi narzędziami, a nie zezwalanie im na logowanie się przy użyciu tożsamości użytkownika.
Ten przykład dotyczy aplikacji biznesowych używanych w jednej organizacji. Do utworzenia jednostki usługi można również użyć programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure.
Ważne
Zamiast tworzyć jednostkę usługi, rozważ użycie tożsamości zarządzanych dla zasobów platformy Azure dla tożsamości aplikacji. Jeśli kod jest uruchamiany w usłudze obsługującej tożsamości zarządzane i uzyskuje dostęp do zasobów obsługujących uwierzytelnianie firmy Microsoft Entra, tożsamości zarządzane są dla Ciebie lepszym rozwiązaniem. Aby dowiedzieć się więcej o tożsamościach zarządzanych dla zasobów platformy Azure, w tym o usługach, które obecnie obsługują, zobacz Co to są tożsamości zarządzane dla zasobów platformy Azure?.
Aby uzyskać więcej informacji na temat relacji między rejestracją aplikacji, obiektami aplikacji i jednostkami usługi, przeczytaj artykuł Application and service principal objects in Microsoft Entra ID (Obiekty aplikacji i jednostki usługi w usłudze Microsoft Entra ID).
Wymagania wstępne
Aby zarejestrować aplikację w dzierżawie firmy Microsoft Entra, potrzebne są następujące elementy:
- Konto użytkownika Microsoft Entra. Jeśli jeszcze go nie masz, możesz bezpłatnie utworzyć konto.
- Wystarczające uprawnienia do rejestrowania aplikacji w dzierżawie firmy Microsoft Entra i przypisywania do aplikacji roli w ramach subskrypcji platformy Azure. Aby wykonać te zadania, musisz mieć
Application.ReadWrite.All
uprawnienie.
Rejestrowanie aplikacji przy użyciu identyfikatora Entra firmy Microsoft i tworzenie jednostki usługi
Napiwek
Kroki opisane w tym artykule mogą się nieznacznie różnić w zależności od portalu, od którego zaczynasz.
Zaloguj się do centrum administracyjnego firmy Microsoft Entra co najmniej jako administrator aplikacji w chmurze.
Przejdź do pozycji Identity>Applications> Rejestracje aplikacji a następnie wybierz pozycję Nowa rejestracja.
Nazwij aplikację, na przykład example-app.
W obszarze Obsługiwane typy kont wybierz pozycję Konta tylko w tym katalogu organizacyjnym.
W obszarze Identyfikator URI przekierowania wybierz pozycję Sieć Web dla typu aplikacji, którą chcesz utworzyć. Wprowadź identyfikator URI, do którego jest wysyłany token dostępu.
Wybierz pozycję Zarejestruj.
Przypisywanie roli do aplikacji
Aby uzyskać dostęp do zasobów w ramach subskrypcji, musisz przypisać rolę do aplikacji. Zdecyduj, która rola oferuje odpowiednie uprawnienia dla aplikacji. Aby dowiedzieć się więcej o dostępnych rolach, zobacz Role wbudowane platformy Azure.
Zakres można ustawić na poziomie subskrypcji, grupy zasobów lub zasobu. Uprawnienia są dziedziczone do niższych poziomów zakresu.
Zaloguj się w witrynie Azure Portal.
Wybierz poziom zakresu, do którego chcesz przypisać aplikację. Aby na przykład przypisać rolę w zakresie subskrypcji, wyszukaj i wybierz pozycję Subskrypcje. Jeśli nie widzisz subskrypcji, której szukasz, wybierz filtr subskrypcji globalnych. Upewnij się, że wybrana subskrypcja jest wybrana dla dzierżawy.
Wybierz pozycję Kontrola dostępu (IAM) .
Wybierz pozycję Dodaj, a następnie wybierz pozycję Dodaj przypisanie roli.
Na karcie Rola wybierz rolę, którą chcesz przypisać do aplikacji na liście.
Wybierz Dalej.
Na karcie Członkowie w polu Przypisz dostęp do wybierz pozycję Użytkownik, grupa lub jednostka usługi.
Wybierz pozycję Wybierz członków. Domyślnie aplikacje Firmy Microsoft Entra nie są wyświetlane w dostępnych opcjach. Aby znaleźć aplikację, wyszukaj ją według nazwy.
Wybierz przycisk Wybierz, a następnie wybierz pozycję Przejrzyj i przypisz.
Twoja jednostka usługi jest skonfigurowana. Możesz zacząć używać go do uruchamiania skryptów lub aplikacji. Aby zarządzać jednostką usługi (uprawnieniami, uprawnieniami ze zgodą użytkownika, zobacz, którzy użytkownicy wyrazili zgodę, przejrzyj uprawnienia, zobacz informacje o logowaniu i nie tylko), przejdź do pozycji Aplikacje dla przedsiębiorstw.
W następnej sekcji pokazano, jak uzyskać wartości potrzebne podczas programowego logowania.
Logowanie się do aplikacji
Podczas programowego logowania należy przekazać identyfikator katalogu (dzierżawy) i identyfikator aplikacji (klienta) w żądaniu uwierzytelniania. Potrzebny jest również certyfikat lub klucz uwierzytelniania. Aby uzyskać identyfikator katalogu i identyfikator aplikacji:
- Otwórz stronę główną centrum administracyjnego firmy Microsoft Entra.
- Przejdź do pozycji Aplikacje tożsamości>> Rejestracje aplikacji a następnie wybierz aplikację.
- Na stronie przeglądu aplikacji skopiuj wartość Identyfikator katalogu (dzierżawy) i zapisz ją w kodzie aplikacji.
- Skopiuj wartość Identyfikator aplikacji (klienta) i zapisz ją w kodzie aplikacji.
Konfigurowanie uwierzytelniania
Istnieją dwa typy uwierzytelniania dostępne dla jednostek usługi: uwierzytelnianie oparte na hasłach (wpis tajny aplikacji) i uwierzytelnianie oparte na certyfikatach. Zalecamy użycie zaufanego certyfikatu wystawionego przez urząd certyfikacji, ale można również utworzyć wpis tajny aplikacji lub utworzyć certyfikat z podpisem własnym na potrzeby testowania.
Opcja 1 (zalecana): przekazywanie zaufanego certyfikatu wystawionego przez urząd certyfikacji
Aby przekazać plik certyfikatu:
- Przejdź do pozycji Aplikacje tożsamości>> Rejestracje aplikacji a następnie wybierz aplikację.
- Wybierz pozycję Certyfikaty i wpisy tajne.
- Wybierz pozycję Certyfikaty, a następnie wybierz pozycję Przekaż certyfikat , a następnie wybierz plik certyfikatu do przekazania.
- Wybierz Dodaj. Po przekazaniu certyfikatu zostaną wyświetlone wartości odcisku palca, daty rozpoczęcia i wygaśnięcia.
Po zarejestrowaniu certyfikatu w aplikacji w portalu rejestracji aplikacji włącz poufny kod aplikacji klienckiej do korzystania z certyfikatu.
Opcja 2. Testowanie tylko: tworzenie i przekazywanie certyfikatu z podpisem własnym
Opcjonalnie możesz utworzyć certyfikat z podpisem własnym tylko do celów testowych. Aby utworzyć certyfikat z podpisem własnym, otwórz program Windows PowerShell i uruchom polecenie New-SelfSignedCertificate z następującymi parametrami, aby utworzyć certyfikat w magazynie certyfikatów użytkownika na komputerze:
$cert=New-SelfSignedCertificate -Subject "CN=DaemonConsoleCert" -CertStoreLocation "Cert:\CurrentUser\My" -KeyExportPolicy Exportable -KeySpec Signature
Wyeksportuj ten certyfikat do pliku przy użyciu przystawki MMC Zarządzanie certyfikatem użytkownika dostępnym z Panel sterowania systemu Windows.
- Wybierz pozycję Uruchom z menu Start, a następnie wprowadź polecenie certmgr.msc. Zostanie wyświetlone narzędzie Menedżer certyfikatów dla bieżącego użytkownika.
- Aby wyświetlić certyfikaty, w obszarze Certyfikaty — bieżący użytkownik w okienku po lewej stronie rozwiń katalog Osobisty .
- Kliknij prawym przyciskiem myszy utworzony certyfikat, wybierz pozycję Wszystkie zadania Eksportuj>.
- Postępuj zgodnie z instrukcjami kreatora eksportu certyfikatów.
Aby przekazać certyfikat:
- Przejdź do pozycji Aplikacje tożsamości>> Rejestracje aplikacji a następnie wybierz aplikację.
- Wybierz pozycję Certyfikaty i wpisy tajne.
- Wybierz pozycję Certyfikaty, a następnie wybierz pozycję Przekaż certyfikat , a następnie wybierz certyfikat (istniejący certyfikat lub wyeksportowany certyfikat z podpisem własnym).
- Wybierz Dodaj.
Po zarejestrowaniu certyfikatu w aplikacji w portalu rejestracji aplikacji włącz poufny kod aplikacji klienckiej do korzystania z certyfikatu.
Opcja 3. Tworzenie nowego klucza tajnego klienta
Jeśli nie chcesz używać certyfikatu, możesz utworzyć nowy klucz tajny klienta.
- Przejdź do pozycji Aplikacje tożsamości>> Rejestracje aplikacji a następnie wybierz aplikację.
- Wybierz pozycję Certyfikaty i wpisy tajne.
- Wybierz pozycję Wpisy tajne klienta, a następnie wybierz pozycję Nowy klucz tajny klienta.
- Podaj opis klucza tajnego i czas obowiązywania.
- Wybierz Dodaj.
Po zapisaniu wpisu tajnego klienta zostanie wyświetlona wartość klucza tajnego klienta. Ta wartość jest wyświetlana tylko raz, dlatego skopiuj tę wartość i zapisz ją, gdzie aplikacja może ją pobrać, zwykle wtedy, gdy aplikacja przechowuje wartości takie jak clientId
, lub authority
w kodzie źródłowym. Podasz wartość wpisu tajnego wraz z identyfikatorem klienta aplikacji, aby zalogować się jako aplikacja.
Konfigurowanie zasad dostępu dla zasobów
Może być konieczne skonfigurowanie dodatkowych uprawnień do zasobów, do których aplikacja musi uzyskać dostęp. Na przykład należy zaktualizować zasady dostępu magazynu kluczy, aby zapewnić aplikacji dostęp do kluczy, wpisów tajnych lub certyfikatów.
Aby skonfigurować zasady dostępu:
Zaloguj się w witrynie Azure Portal.
Wybierz magazyn kluczy i wybierz pozycję Zasady dostępu.
Wybierz pozycję Dodaj zasady dostępu, a następnie wybierz uprawnienia klucza, wpisu tajnego i certyfikatu, które chcesz przyznać aplikacji. Wybierz wcześniej utworzoną jednostkę usługi.
Wybierz pozycję Dodaj , aby dodać zasady dostępu, a następnie wybierz pozycję Zapisz.
Powiązana zawartość
- Dowiedz się, jak utworzyć jednostkę usługi przy użyciu programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure.
- Aby dowiedzieć się więcej na temat określania zasad zabezpieczeń, zobacz Kontrola dostępu oparta na rolach (RBAC) platformy Azure.
- Aby uzyskać listę dostępnych akcji, które można udzielić użytkownikom lub odmówić im, zobacz Operacje dostawcy zasobów usługi Azure Resource Manager.
- Aby uzyskać informacje na temat pracy z rejestracjami aplikacji przy użyciu programu Microsoft Graph, zobacz dokumentację interfejsu API aplikacji .