Najlepsze rozwiązania dotyczące autoryzacji

W miarę opracowywania przy użyciu zasad zero trust w tym artykule nadal jest uzyskiwanie autoryzacji w celu uzyskiwania dostępu do zasobów, Opracowywanie strategii uprawnień delegowanych i Opracowywanie strategii uprawnień aplikacji. Pomoże Ci to, jako deweloper, zaimplementować najlepsze modele autoryzacji, uprawnień i zgody dla aplikacji.

Logikę autoryzacji można zaimplementować w aplikacjach lub rozwiązaniach wymagających kontroli dostępu. Gdy metody autoryzacji opierają się na informacjach o uwierzytelnionej jednostce, aplikacja może ocenić informacje wymieniane podczas uwierzytelniania (na przykład informacje podane w tokenie zabezpieczającym). Gdy token zabezpieczający nie zawiera informacji, aplikacja może wykonywać wywołania do zasobów zewnętrznych.

Nie musisz całkowicie osadzać logiki autoryzacji w aplikacji. Usługi dedykowanej autoryzacji umożliwiają scentralizowanie implementacji autoryzacji i zarządzania nimi.

Najlepsze rozwiązania dotyczące uprawnień

Najczęściej stosowane aplikacje w usłudze Microsoft Entra ID są zgodne z najlepszymi rozwiązaniami dotyczącymi wyrażania zgody i autoryzacji. Zapoznaj się z najlepszymi rozwiązaniami dotyczącymi pracy z programem Microsoft Graph i uprawnieniami programu Microsoft Graph, aby dowiedzieć się, jak być przemyślane z żądaniami uprawnień.

  • Zastosuj najmniejsze uprawnienia. Żądaj tylko niezbędnych uprawnień. Użyj zgody przyrostowej, aby zażądać szczegółowych uprawnień just in time. Ogranicz dostęp użytkowników za pomocą zasad just in time i Just-Enough-Access (JIT/JEA), zasad adaptacyjnych opartych na ryzyku i ochrony danych.

  • Użyj poprawnego typu uprawnień na podstawie scenariuszy. Unikaj używania uprawnień aplikacji i delegowanych w tej samej aplikacji. Jeśli tworzysz interaktywną aplikację, w której znajduje się zalogowany użytkownik, aplikacja powinna używać delegowanych uprawnień. Jeśli jednak aplikacja działa bez zalogowanego użytkownika, takiego jak usługa w tle lub demon, aplikacja powinna używać uprawnień aplikacji.

  • Podaj warunki świadczenia usług i oświadczenia o ochronie prywatności. Środowisko wyrażania zgody użytkownika przedstawia warunki korzystania z usług i zasad zachowania poufności informacji użytkownikom, aby pomóc im wiedzieć, że mogą ufać Twojej aplikacji. Są one szczególnie krytyczne dla aplikacji wielodostępnych dla użytkowników.

Kiedy zażądać uprawnienia

Niektóre uprawnienia wymagają od administratora udzielenia zgody w ramach dzierżawy. Mogą oni użyć punktu końcowego zgody administratora, aby udzielić uprawnień całej dzierżawie. Istnieją trzy modele, które można wykonać, aby zażądać uprawnień lub zakresów.

  • Zaimplementuj dynamiczną zgodę użytkownika na żądanie logowania lub pierwszego tokenu dostępu. Dynamiczna zgoda użytkownika nie wymaga żadnych elementów w rejestracji aplikacji. Zakresy potrzebne w określonych warunkach można zdefiniować (na przykład podczas pierwszego logowania użytkownika). Po zażądaniu tego uprawnienia i otrzymaniu zgody nie trzeba żądać uprawnień. Jeśli jednak nie otrzymano dynamicznej zgody użytkownika podczas logowania lub pierwszego dostępu, przechodzi on przez środowisko uprawnień.

  • Zażądaj przyrostowej zgody użytkownika zgodnie z potrzebami. W przypadku zgody przyrostowej w połączeniu z dynamiczną zgodą użytkownika nie musisz żądać wszystkich uprawnień jednocześnie. Możesz zażądać kilku uprawnień, a następnie, gdy użytkownik przejdzie do różnych funkcji w aplikacji, zażądasz większej zgody. Takie podejście może zwiększyć poziom komfortu użytkownika w miarę przyrostowego udzielania uprawnień do aplikacji. Jeśli na przykład aplikacja żąda dostępu do usługi OneDrive, może podejrzewać, że żądasz dostępu do kalendarza. Zamiast tego poproś użytkownika o dodanie przypomnień kalendarza do usługi OneDrive.

  • /.default Użyj zakresu. Zakres /.default skutecznie naśladuje stare środowisko domyślne, które spojrzało na to, co zostało wprowadzone w rejestracji aplikacji, dowiedzieć się, jakie zgody są potrzebne, a następnie poprosił o wszystkie zgody, które nie zostały jeszcze przyznane. Nie wymaga ona uwzględnienia wymaganych uprawnień w kodzie, ponieważ znajdują się one w rejestracji aplikacji.

Bycie zweryfikowanym wydawcą

Klienci firmy Microsoft czasami opisują trudności w podejmowaniu decyzji, kiedy zezwolić aplikacji na dostęp do Platforma tożsamości Microsoft przez zalogowanie użytkownika lub wywołanie interfejsu API. Przyjmując zasady Zero Trust, chcą:

  • Zwiększona widoczność i kontrola.
  • Bardziej proaktywne i łatwiejsze decyzje reaktywne.
  • Systemy, które zapewniają bezpieczeństwo danych i zmniejszają obciążenie decyzyjne.
  • Przyspieszone wdrażanie aplikacji dla zaufanych deweloperów.
  • Ograniczona zgoda na aplikacje z uprawnieniami niskiego ryzyka zweryfikowanymi przez wydawcę.

Podczas gdy dostęp do danych w interfejsach API, takich jak Microsoft Graph, umożliwia tworzenie rozbudowanych aplikacji, organizacja lub klient oceni uprawnienia, które aplikacja żąda wraz z wiarygodnością aplikacji.

Bycie zweryfikowanym wydawcą firmy Microsoft ułatwia klientom akceptowanie żądań aplikacji. Gdy aplikacja pochodzi od zweryfikowanego wydawcy, użytkownicy, specjalista IT i klienci wiedzą, że pochodzi ona od osoby, z którą firma Microsoft ma relację biznesową. Niebieski znacznik wyboru jest wyświetlany obok nazwy wydawcy (składnik #5 w przykładzie monitu o zgodę żądane uprawnienia poniżej; zobacz tabelę składników w środowisku zgody aplikacji Microsoft Entra). Użytkownik może wybrać zweryfikowanego wydawcę z monitu o zgodę, aby wyświetlić więcej informacji.

Zrzut ekranu przedstawiający okno dialogowe Uprawnienia żądane z blokami konstrukcyjnymi składników zgodnie z opisem w artykule dotyczącym połączonego środowiska zgody aplikacji Firmy Microsoft Entra.

Gdy jesteś zweryfikowanym wydawcą, użytkownicy i prozy IT zyskują zaufanie do aplikacji, ponieważ jesteś zweryfikowaną jednostką. Weryfikacja wydawcy zapewnia ulepszoną markę dla aplikacji oraz zwiększoną przejrzystość, zmniejszenie ryzyka i bezproblemowe wdrożenie przedsiębiorstwa dla klientów.

Następne kroki

  • Opracowanie strategii uprawnień delegowanych ułatwia zaimplementowanie najlepszego podejścia do zarządzania uprawnieniami w aplikacji i opracowywania przy użyciu zasad zero trust.
  • Opracowywanie strategii uprawnień aplikacji ułatwia podjęcie decyzji o podejściu uprawnień aplikacji do zarządzania poświadczeniami.
  • Użyj najlepszych rozwiązań dotyczących tworzenia tożsamości zero trust i zarządzania dostępem w cyklu tworzenia aplikacji, aby utworzyć bezpieczne aplikacje.
  • Najlepsze rozwiązania dotyczące zabezpieczeń właściwości aplikacji opisują identyfikator URI przekierowania, tokeny dostępu, certyfikaty i wpisy tajne, identyfikator URI identyfikatora aplikacji i własność aplikacji.
  • Dostosowywanie tokenów opisuje informacje, które można otrzymywać w tokenach firmy Microsoft Entra oraz jak dostosować tokeny w celu zwiększenia elastyczności i kontroli przy jednoczesnym zwiększeniu zabezpieczeń zerowego zaufania aplikacji z najniższymi uprawnieniami.
  • Konfigurowanie oświadczeń grup i ról aplikacji w tokenach pokazuje, jak skonfigurować aplikacje przy użyciu definicji ról aplikacji i przypisać grupy zabezpieczeń do ról aplikacji w celu zwiększenia elastyczności i kontroli przy jednoczesnym zwiększeniu zabezpieczeń zerowego zaufania aplikacji z najmniejszymi uprawnieniami.
  • 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.
  • Uzyskanie autoryzacji dostępu do zasobów pomaga zrozumieć, jak najlepiej zapewnić zero trust podczas uzyskiwania uprawnień dostępu do zasobów dla aplikacji.