Zabezpieczanie aplikacji usługi App Service

Ukończone

usługa aplikacja systemu Azure zapewnia wbudowaną obsługę uwierzytelniania i autoryzacji. Możesz logować użytkowników i uzyskiwać dostęp do danych, pisząc minimalny lub żaden kod w aplikacji internetowej, interfejsie API i zapleczu mobilnym, a także w aplikacjach usługi Azure Functions.

Bezpieczne uwierzytelnianie i autoryzacja wymagają głębokiego zrozumienia zabezpieczeń, w tym federacji, szyfrowania, tokenów internetowych JSON (JWT), zarządzania typami udzielania itd. Usługa App Service udostępnia te narzędzia, dzięki czemu możesz poświęcić więcej czasu i energii na dostarczanie wartości biznesowej klientowi.

Uwaga

Do uwierzytelniania i autoryzacji nie jest wymagane użycie usługi aplikacja systemu Azure Service. Wiele struktur internetowych jest powiązanych z funkcjami zabezpieczeń i można użyć preferowanej usługi.

Co należy wiedzieć o zabezpieczeniach aplikacji za pomocą usługi App Service

Przyjrzyjmy się bliżej temu, jak usługa App Service pomaga zapewnić bezpieczeństwo aplikacji.

  • Moduł zabezpieczeń uwierzytelniania i autoryzacji w usłudze aplikacja systemu Azure działa w tym samym środowisku co kod aplikacji, ale oddzielnie.

  • Moduł zabezpieczeń jest konfigurowany przy użyciu ustawień aplikacji. Nie są wymagane żadne zestawy SDK, określone języki ani zmiany w kodzie aplikacji.

  • Po włączeniu modułu zabezpieczeń każde przychodzące żądanie HTTP przechodzi przez moduł przed jego obsługą przez kod aplikacji.

  • Moduł zabezpieczeń obsługuje kilka zadań dla aplikacji:

    • Uwierzytelnianie użytkowników za pomocą określonego dostawcy
    • Weryfikowanie, przechowywanie i odświeżanie tokenów
    • Zarządzanie uwierzytelnianą sesją
    • Wstrzykiwanie informacji o tożsamości do nagłówków żądań

Kwestie, które należy wziąć pod uwagę podczas korzystania z usługi App Service na potrzeby zabezpieczeń aplikacji

Zabezpieczenia uwierzytelniania i autoryzacji można skonfigurować w usłudze App Service, wybierając pozycję Funkcje w witrynie Azure Portal. Zapoznaj się z poniższymi opcjami i zastanów się, jakie zabezpieczenia mogą przynieść korzyści implementacji aplikacji usługi App Service.

  • Zezwalaj na żądania anonimowe (brak działania). Odroczenie autoryzacji nieuwierzytelnionego ruchu do kodu aplikacji. W przypadku uwierzytelnionych żądań usługa App Service przekazuje również informacje uwierzytelniania w nagłówkach HTTP. Ta funkcja zapewnia większą elastyczność obsługi żądań anonimowych. Dzięki tej funkcji można przedstawić wielu dostawców logowania użytkownikom.

  • Zezwalaj tylko na uwierzytelnione żądania. Przekieruj wszystkie anonimowe żądania do /.auth/login/<provider> wybranego dostawcy. Ta funkcja jest równoważna logowaniu za pomocą <dostawcy>. Jeśli żądanie anonimowe pochodzi z natywnej aplikacji mobilnej, zwracana odpowiedź jest komunikatem HTTP 401 Unauthorized . Dzięki tej funkcji nie musisz pisać żadnego kodu uwierzytelniania w aplikacji.

    Ważne

    Ta funkcja ogranicza dostęp do wszystkich wywołań aplikacji. Ograniczenie dostępu do wszystkich wywołań może nie być pożądane, jeśli aplikacja wymaga publicznej strony głównej, podobnie jak w przypadku wielu aplikacji jednostronicowych.

  • Rejestrowanie i śledzenie. Wyświetlanie śladów uwierzytelniania i autoryzacji bezpośrednio w plikach dziennika. Jeśli zostanie wyświetlony błąd uwierzytelniania, którego nie oczekiwano, możesz wygodnie znaleźć wszystkie szczegóły, wyszukując istniejące dzienniki aplikacji. Jeśli włączono śledzenie żądań, które zakończyło się niepowodzeniem, zobaczysz dokładnie, jak moduł zabezpieczeń uczestniczył w żądaniu, który zakończył się niepowodzeniem. W dziennikach śledzenia poszukaj odwołań do modułu o nazwie EasyAuthModule_32/64.