Najlepsze rozwiązania dotyczące uwierzytelniania

Bezpieczeństwo aplikacji ma kluczowe znaczenie. Niezależnie od tego, jak doskonałe jest środowisko użytkownika, niezabezpieczona aplikacja może zostać naruszona przez hakerów, podważając jego integralność i pogarszając zaufanie użytkowników.

Ten artykuł zawiera porady dotyczące zapewnienia bezpieczeństwa aplikacji usługi Azure Maps. W przypadku korzystania z platformy Azure ważne jest zapoznanie się z dostępnymi narzędziami zabezpieczeń. Więcej informacji można znaleźć w artykule Wprowadzenie do bezpieczeństwa Azure w dokumentacji bezpieczeństwa Azure.

Informacje o zagrożeniach bezpieczeństwa

Jeśli hakerzy uzyskują dostęp do twojego konta, potencjalnie mogą wykonywać nieograniczone transakcje rozliczane, co prowadzi do nieoczekiwanych kosztów i zmniejszonej wydajności z powodu limitów QPS.

Aby zaimplementować najlepsze rozwiązania dotyczące zabezpieczania aplikacji usługi Azure Maps, ważne jest, aby zrozumieć różne dostępne opcje uwierzytelniania.

Najlepsze rozwiązania dotyczące uwierzytelniania w usłudze Azure Maps

Podczas tworzenia publicznie dostępnych aplikacji klienckich za pomocą usługi Azure Maps kluczowe jest zapewnienie, że wpisy tajne uwierzytelniania pozostają prywatne i nie są publicznie dostępne.

Możesz używać uwierzytelniania opartego na kluczu subskrypcyjnym (Shared Key) w aplikacjach po stronie klienta lub usługach internetowych, ale jest to najmniej bezpieczna metoda ochrony aplikacji lub usługi webowej. Ta metoda jest niebezpieczna, ponieważ nieuczciwi aktorzy mogą łatwo wydobyć klucz z żądania HTTP, dając dostęp do wszystkich dostępnych dla konta API REST Azure Maps. Jeśli używasz kluczy subskrypcyjnych, pamiętaj, aby regularnie je rotować i pamiętaj, że klucz współdzielony nie obsługuje konfigurowalnych czasów życia, więc musisz obracać klucze ręcznie. Rozważ użycie uwierzytelniania klucza wspólnego w usłudze Azure Key Vault, aby bezpiecznie przechowywać tajny klucz na platformie Azure.

W przypadku korzystania z uwierzytelniania microsoft Entra lub uwierzytelniania tokenu sygnatury dostępu współdzielonego (SAS) dostęp do interfejsów API REST usługi Azure Maps jest autoryzowany przy użyciu kontroli dostępu opartej na rolach (RBAC). RBAC umożliwia określenie poziomu dostępu przyznawanego wystawionym tokenom. Ważne jest, aby wziąć pod uwagę czas trwania, dla którego należy udzielić dostępu. W przeciwieństwie do uwierzytelniania za pomocą klucza współużytkowanego można skonfigurować okres istnienia tych tokenów.

Napiwek

Aby uzyskać więcej informacji na temat konfigurowania okresów istnienia tokenów, zobacz:

Publiczny klient i poufne aplikacje klienckie

Istnieją różne obawy dotyczące zabezpieczeń między publicznymi i poufnymi aplikacjami klienckimi. Aby uzyskać więcej informacji na temat tego, co jest uznawane za publiczne i poufne aplikacje klienckie, zobacz Publiczna aplikacja kliencka i poufne aplikacje klienckie w dokumentacji Platforma tożsamości Microsoft.

Publiczne aplikacje klienckie

W przypadku aplikacji działających na urządzeniach, komputerach stacjonarnych lub przeglądarkach internetowych zaleca się zdefiniowanie domen, które mogą uzyskiwać dostęp do konta usługi Azure Maps przy użyciu współużytkowania zasobów między źródłami (CORS). Mechanizm CORS informuje przeglądarkę klienta, które pochodzenia, takie jak "https://microsoft.com", są dozwolone do żądania zasobów dla konta usługi Azure Maps.

Uwaga

Jeśli tworzysz serwer internetowy lub usługę, konfigurowanie konta usługi Azure Maps przy użyciu mechanizmu CORS jest niepotrzebne. Jeśli jednak aplikacja internetowa po stronie klienta zawiera kod JavaScript, mechanizm CORS ma zastosowanie.

Poufne aplikacje klienckie

W przypadku aplikacji serwerowych, takich jak usługi internetowe i aplikacje demonów/usług, rozważ użycie tożsamości zarządzanych, aby uniknąć złożoności zarządzania tajnymi informacjami. Tożsamości zarządzane mogą zapewnić tożsamość serwisu internetowego w celu nawiązania połączenia z usługą Azure Maps przy użyciu uwierzytelniania Microsoft Entra. Usługa internetowa może następnie użyć tej tożsamości do uzyskania niezbędnych tokenów firmy Microsoft Entra. Zaleca się użycie Azure RBAC do skonfigurowania dostępu przyznanego usłudze sieciowej, stosując możliwe role o najniższych uprawnieniach.

Następne kroki