Opracowywanie strategii uprawnień aplikacji

Gdy dowiesz się, jak opracowywać przy użyciu zasad zero trust, zapoznaj się z tym artykułem po zapoznaniu się z artykułem Uzyskiwanie autoryzacji dostępu do zasobów i Opracowywanie strategii uprawnień delegowanych. Zdefiniuj podejście uprawnień aplikacji do zarządzania poświadczeniami, gdy używasz Platforma tożsamości Microsoft do uwierzytelniania i autoryzowania aplikacji oraz zarządzania uprawnieniami i zgodą.

Jeśli żaden użytkownik nie jest zaangażowany, nie będziesz mieć skutecznego modelu uprawnień, ponieważ aplikacja zawsze otrzymuje te same uprawnienia, którym udzielono konkretnego użytkownika aplikacji.

  • Aplikacja potwierdza, że jest to aplikacja żądającą uprawnień. Twoja aplikacja udowodni własną tożsamość przy użyciu jednej z następujących metod:

    • certyfikatu, który jest najlepszą opcją, lub
    • wpis tajny w zaawansowanym systemie zarządzania wpisami tajnymi lub
    • wpis tajny podczas tworzenia usług na platformie Azure i używania tożsamości zarządzanych dla zasobów platformy Azure. Zobacz następującą sekcję Zarządzanie poświadczeniami aplikacji.
  • Aplikacja zawsze wymaga wcześniejszej zgody administratora. Aplikacja zażąda tego uprawnienia z zakresem .default . Zażąda uprawnień przypisanych przez administratora do aplikacji. Niezależnie od nazewnictwa dla dowolnego określonego zakresu, te uprawnienia mają zastosowanie domyślnie dla wszystkich użytkowników.

  • Funkcje użytkownika trans. Domyślnie User.ReadWrite.All aplikacja może aktualizować profil każdego użytkownika, nawet Calendar.Read. Jako uprawnienie aplikacji umożliwia aplikacji odczytywanie kalendarza każdego użytkownika w dzierżawie.

  • Uprawnienia przyznane aplikacji są zawsze używanymi uprawnieniami. W przeciwieństwie do uprawnień delegowanych uprawnienia aplikacji nie są ograniczone przez to, co może zrobić żaden konkretny użytkownik.

Ograniczanie uprawnień aplikacji

Istnieją trzy sposoby ograniczania aplikacji do mniej niż dostępu globalnego.

  • Aplikacje usługi Microsoft Teams mają zgodę specyficzną dla zasobów (RSC), która umożliwia aplikacji dostęp do określonego zespołu, a nie uzyskiwania dostępu do wszystkich zespołów w przedsiębiorstwie. RSC to integracja aplikacji Microsoft Teams i interfejsu API programu Microsoft Graph, która umożliwia aplikacji korzystanie z punktów końcowych interfejsu API i zarządzanie określonymi zasobami. Jego model uprawnień umożliwia właścicielom usługi Teams i czatów wyrażenie zgody na dostęp do aplikacji i modyfikowanie ich danych usługi Teams i czatu.

  • Administratorzy programu Microsoft Exchange mogą tworzyć zasady aplikacji programu Exchange, aby ograniczyć dostęp aplikacji do określonych skrzynek pocztowych za pomocą skryptu programu PowerShell. Mogą ograniczyć określoną aplikację do określonych skrzynek pocztowych z dostępem lub Mail.Read dostępemCalendar.Read. Umożliwia to na przykład utworzenie automatyzacji, która może odczytywać tylko jedną skrzynkę pocztową lub wysyłać pocztę tylko z jednej skrzynki pocztowej, a nie ze wszystkich w przedsiębiorstwie.

  • Program SharePoint ma plik Sites.Selected jako określony zakres , aby umożliwić szczegółowe uprawnienia dostępu do programu SharePoint za pomocą aplikacji. Wybranie Sites.Selected aplikacji zamiast jednego z pozostałych uprawnień domyślnie spowoduje, że aplikacja nie ma dostępu do żadnych zbiorów witryn programu SharePoint. Administrator używa punktu końcowego uprawnień lokacji do udzielania uprawnień do odczytu, zapisu lub odczytu i zapisu w aplikacji.

Zarządzanie poświadczeniami aplikacji

Higiena poświadczeń może zapewnić szybkie odzyskanie aplikacji po potencjalnym naruszeniu zabezpieczeń. Poniższe najlepsze rozwiązania zawierają wskazówki dotyczące tworzenia aplikacji, które przeprowadzają wykrywanie i korygowanie, unikając przestojów i wpływających na uprawnionych użytkowników. Te zalecenia obsługują zasadę zero trustu, która zakłada naruszenie w przygotowaniu cię do reagowania na zdarzenie zabezpieczeń.

  • Usuń wszystkie wpisy tajne z kodu i konfiguracji. Gdy używasz platformy Azure, umieść wpisy tajne w usłudze Key Vault i uzyskaj do nich dostęp za pośrednictwem tożsamości zarządzanych dla zasobów platformy Azure. Uodpornij kod na obsługę rotacji wpisów tajnych w przypadku naruszenia zabezpieczeń. Administratorzy IT mogą usuwać wpisy tajne i certyfikaty oraz wymieniać je bez usuwania aplikacji lub wywierania wpływu na uprawnionych użytkowników.

  • Używaj certyfikatów zamiast wpisów tajnych klienta, chyba że istnieje bezpieczny proces do zarządzania wpisami tajnymi. Osoby atakujące wiedzą, że wpisy tajne klienta są zwykle mniej bezpieczne i wyciekły użycie wpisów tajnych jest trudne do śledzenia. Certyfikaty można lepiej zarządzać i odwoływać w przypadku naruszenia zabezpieczeń. W przypadku korzystania z wpisów tajnych skompiluj lub użyj bezpiecznego procesu wdrażania bezobsługowego i przerzucania. Używaj wpisów tajnych z ustawionym okresem wygaśnięcia (na przykład jeden rok, dwa lata) i nigdy nie wygasa.

  • Regularnie przerzucaj certyfikaty i wpisy tajne, aby tworzyć odporność w aplikacji i unikać awarii z powodu przerzucania awaryjnego.

Następne kroki

  • Uzyskanie autoryzacji dostępu do zasobów pomaga zrozumieć, jak najlepiej zapewnić zero trust podczas uzyskiwania uprawnień dostępu do zasobów dla aplikacji.
  • Opracowanie strategii uprawnień delegowanych ułatwia zaimplementowanie najlepszego podejścia do zarządzania uprawnieniami w aplikacji i opracowywania przy użyciu zasad zero trust.
  • Najlepsze rozwiązania dotyczące autoryzacji pomagają zaimplementować najlepsze modele autoryzacji, uprawnień i zgody dla aplikacji.
  • Żądanie uprawnień, które wymagają zgody administracyjnej, opisuje środowisko uprawnień i zgody, gdy uprawnienia aplikacji będą wymagały zgody administracyjnej.
  • Usługa API Protection opisuje najlepsze rozwiązania dotyczące ochrony interfejsu API za pośrednictwem rejestracji, definiowania uprawnień i zgody oraz wymuszania dostępu w celu osiągnięcia celów zero trust.
  • Podawanie poświadczeń tożsamości aplikacji, gdy nie ma użytkownika , wyjaśnia, dlaczego najlepsze praktyki poświadczeń klienta Zero Trust dla usług (aplikacji innych niż użytkownicy) na platformie Azure to Tożsamości zarządzane dla zasobów platformy Azure.