Uwierzytelnianie entra firmy Microsoft dla usługi Azure Database for MySQL — serwer elastyczny
Uwierzytelnianie entra firmy Microsoft to mechanizm łączenia się z serwerem elastycznym usługi Azure Database for MySQL przy użyciu tożsamości zdefiniowanych w identyfikatorze Entra firmy Microsoft. Dzięki uwierzytelnianiu firmy Microsoft Entra można zarządzać tożsamościami użytkowników bazy danych i innymi usługi firmy Microsoft w centralnej lokalizacji, upraszczając zarządzanie uprawnieniami.
Świadczenia
- Uwierzytelnianie użytkowników w usługach platformy Azure w jednolity sposób
- Zarządzanie zasadami haseł i rotacją haseł w jednym miejscu
- Wiele form uwierzytelniania obsługiwanych przez identyfikator Entra firmy Microsoft, co może wyeliminować konieczność przechowywania haseł
- Klienci mogą zarządzać uprawnieniami bazy danych przy użyciu grup zewnętrznych (Microsoft Entra ID).
- Uwierzytelnianie entra firmy Microsoft używa użytkowników bazy danych MySQL do uwierzytelniania tożsamości na poziomie bazy danych
- Obsługa uwierzytelniania opartego na tokenach dla aplikacji łączących się z serwerem elastycznym usługi Azure Database for MySQL
Wykonaj poniższe kroki, aby skonfigurować i użyć uwierzytelniania firmy Microsoft Entra
Wybierz preferowaną metodę uwierzytelniania na potrzeby uzyskiwania dostępu do serwera elastycznego. Domyślnie wybrane uwierzytelnianie jest ustawione tylko na uwierzytelnianie MySQL. Wybierz pozycję Tylko uwierzytelnianie entra firmy Microsoft lub uwierzytelnianie MySQL i Microsoft Entra, aby włączyć uwierzytelnianie firmy Microsoft Entra.
Wybierz tożsamość zarządzaną użytkownika (UMI) z następującymi uprawnieniami, aby skonfigurować uwierzytelnianie firmy Microsoft Entra:
- User.Read.All: umożliwia dostęp do informacji o użytkowniku firmy Microsoft Entra.
- GroupMember.Read.All: umożliwia dostęp do informacji o grupie Entra firmy Microsoft.
- Application.Read.ALL: Umożliwia dostęp do informacji o jednostce usługi Entra firmy Microsoft (aplikacji).
Dodaj administratora firmy Microsoft Entra. Może to być użytkownicy lub grupy firmy Microsoft, którzy mają dostęp do serwera elastycznego.
Utwórz użytkowników bazy danych w bazie danych zamapowanych na tożsamości firmy Microsoft Entra.
Nawiąż połączenie z bazą danych, pobierając token dla tożsamości firmy Microsoft Entra i logując się.
Uwaga
Aby uzyskać szczegółowe instrukcje krok po kroku dotyczące konfigurowania uwierzytelniania entra firmy Microsoft za pomocą usługi Azure Database for MySQL — elastyczny serwer, zobacz Konfigurowanie uwierzytelniania entra firmy Microsoft dla usługi Azure Database for MySQL — serwer elastyczny
Architektura
Tożsamości zarządzane przez użytkownika są wymagane do uwierzytelniania w usłudze Microsoft Entra. Gdy tożsamość przypisana przez użytkownika jest połączona z serwerem elastycznym, dostawca zasobów tożsamości zarządzanej (MSRP) wystawia certyfikat wewnętrznie tej tożsamości. Po usunięciu tożsamości zarządzanej odpowiednia jednostka usługi zostanie automatycznie usunięta.
Następnie usługa używa tożsamości zarządzanej do żądania tokenów dostępu dla usług, które obsługują uwierzytelnianie firmy Microsoft Entra. Usługa Azure Database obecnie obsługuje tylko przypisaną przez użytkownika tożsamość zarządzaną (UMI) dla usługi Azure Database for MySQL — serwer elastyczny. Aby uzyskać więcej informacji, zobacz Typy tożsamości zarządzanych na platformie Azure.
Poniższy diagram wysokiego poziomu zawiera podsumowanie sposobu działania uwierzytelniania przy użyciu uwierzytelniania firmy Microsoft w usłudze Azure Database for MySQL — elastyczny serwer. Strzałki wskazują ścieżki komunikacyjne.
- Aplikacja może zażądać tokenu z punktu końcowego tożsamości usługi Azure Instance Metadata Service.
- Jeśli używasz identyfikatora klienta i certyfikatu, wywołanie jest wykonywane do identyfikatora Entra firmy Microsoft w celu żądania tokenu dostępu.
- Token dostępu JSON Web Token (JWT) jest zwracany przez identyfikator Firmy Microsoft Entra. Aplikacja wysyła token dostępu w wywołaniu serwera elastycznego.
- Serwer elastyczny weryfikuje token za pomocą identyfikatora Entra firmy Microsoft.
Struktura administratora
Istnieją dwa konta administratora usługi Azure Database for MySQL — serwer elastyczny podczas korzystania z uwierzytelniania firmy Microsoft Entra: oryginalny administrator MySQL i administrator firmy Microsoft Entra.
Tylko administrator oparty na koncie Microsoft Entra może utworzyć pierwszego użytkownika bazy danych Entra ID firmy Microsoft w bazie danych użytkownika. Logowanie administratora firmy Microsoft Entra może być użytkownikiem firmy Microsoft Entra lub grupą Microsoft Entra. Gdy administrator jest kontem grupy, może być używany przez dowolnego członka grupy, włączając wielu administratorów firmy Microsoft Entra dla serwera elastycznego. Korzystanie z konta grupy jako administrator zwiększa możliwości zarządzania, umożliwiając centralne dodawanie i usuwanie członków grupy w identyfikatorze Entra firmy Microsoft bez zmieniania użytkowników lub uprawnień na serwerze elastycznym. Jednocześnie można skonfigurować tylko jednego administratora firmy Microsoft (użytkownika lub grupy).
Metody uwierzytelniania na potrzeby uzyskiwania dostępu do serwera elastycznego obejmują:
Tylko uwierzytelnianie MySQL — jest to opcja domyślna. Dostęp do serwera elastycznego można używać tylko natywnego uwierzytelniania MySQL przy użyciu logowania i hasła mySQL.
Tylko uwierzytelnianie microsoft Entra — uwierzytelnianie natywne mySQL jest wyłączone, a użytkownicy mogą uwierzytelniać się tylko przy użyciu użytkownika i tokenu firmy Microsoft Entra. Aby włączyć ten tryb, parametr serwera aad_auth_only jest ustawiony na WŁĄCZONE.
Uwierzytelnianie przy użyciu programów MySQL i Microsoft Entra ID — obsługiwane są zarówno natywne uwierzytelnianie MySQL, jak i uwierzytelnianie firmy Microsoft Entra. Aby włączyć ten tryb, parametr serwera aad_auth_only jest ustawiony na wyłączone.
Uprawnienia
Następujące uprawnienia są wymagane, aby umożliwić usłudze UMI odczyt z programu Microsoft Graph jako tożsamość serwera. Alternatywnie nadaj tożsamości zarządzanej przypisanej przez użytkownika rolę Czytelnicy katalogu.
Ważne
Tylko użytkownik z co najmniej rolą Administrator ról uprzywilejowanych może przyznać te uprawnienia.
- User.Read.All: umożliwia dostęp do informacji o użytkowniku firmy Microsoft Entra.
- GroupMember.Read.All: umożliwia dostęp do informacji o grupie Entra firmy Microsoft.
- Application.Read.ALL: Umożliwia dostęp do informacji o jednostce usługi Entra firmy Microsoft (aplikacji).
Aby uzyskać wskazówki dotyczące udzielania uprawnień i korzystania z nich, zobacz Omówienie uprawnień programu Microsoft Graph
Po udzieleniu uprawnień do interfejsu użytkownika są one włączone dla wszystkich serwerów utworzonych przy użyciu interfejsu użytkownika przypisanego jako tożsamość serwera.
Walidacja tokenu
Uwierzytelnianie firmy Microsoft Entra na serwerze elastycznym usługi Azure Database for MySQL zapewnia, że użytkownik istnieje na serwerze MySQL i sprawdza poprawność tokenu, sprawdzając zawartość tokenu. Są wykonywane następujące kroki weryfikacji tokenu:
- Token jest podpisany przez identyfikator Firmy Microsoft Entra i nie został naruszony.
- Token został wystawiony przez identyfikator Entra firmy Microsoft dla dzierżawy skojarzonej z serwerem.
- Token nie wygasł.
- Token jest przeznaczony dla zasobu serwera elastycznego (a nie innego zasobu platformy Azure).
Nawiązywanie połączenia przy użyciu tożsamości firmy Microsoft Entra
Uwierzytelnianie firmy Microsoft Entra obsługuje następujące metody nawiązywania połączenia z bazą danych przy użyciu tożsamości firmy Microsoft Entra:
- Microsoft Entra Password
- Microsoft Entra integrated
- Microsoft Entra Universal z usługą MFA
- Używanie certyfikatów aplikacji usługi Active Directory lub wpisów tajnych klienta
- Tożsamość zarządzana
Po uwierzytelnieniu w usłudze Active Directory należy pobrać token. Ten token to hasło do logowania.
Uwaga
Ta operacja zarządzania, taka jak dodawanie nowych użytkowników, jest obsługiwana tylko dla ról użytkowników firmy Microsoft Entra.
Uwaga
Aby uzyskać więcej informacji na temat nawiązywania połączenia z tokenem usługi Active Directory, zobacz Konfigurowanie uwierzytelniania usługi Microsoft Entra dla usługi Azure Database for MySQL — serwer elastyczny.
Inne uwagi
W dowolnym momencie można skonfigurować tylko jednego administratora usługi Microsoft Entra na serwer elastyczny.
Tylko administrator firmy Microsoft Entra dla programu MySQL może początkowo łączyć się z serwerem elastycznym przy użyciu konta Microsoft Entra. Administrator usługi Active Directory może skonfigurować kolejnych użytkowników bazy danych Firmy Microsoft Entra lub grupę Firmy Microsoft Entra. Gdy administrator jest kontem grupy, może być używany przez dowolnego członka grupy, włączając wielu administratorów firmy Microsoft Entra dla serwera elastycznego. Użycie konta grupy jako administrator zwiększa możliwości zarządzania, umożliwiając centralne dodawanie i usuwanie członków grupy w identyfikatorze Entra firmy Microsoft bez zmieniania użytkowników lub uprawnień na serwerze elastycznym.
Jeśli użytkownik zostanie usunięty z identyfikatora Entra firmy Microsoft, ten użytkownik nie może już uwierzytelnić się przy użyciu identyfikatora Entra firmy Microsoft. W związku z tym uzyskanie tokenu dostępu dla tego użytkownika nie jest już możliwe. Mimo że pasujący użytkownik nadal znajduje się w bazie danych, nawiązanie połączenia z serwerem z tym użytkownikiem nie jest możliwe.
Uwaga
Zaloguj się przy użyciu usuniętego użytkownika Microsoft Entra, dopóki token nie wygaśnie (do 60 minut od wystawiania tokenu). Jeśli usuniesz użytkownika z usługi Azure Database for MySQL — serwer elastyczny, ten dostęp zostanie natychmiast odwołany.
Jeśli administrator firmy Microsoft Entra zostanie usunięty z serwera, serwer nie jest już skojarzony z dzierżawą firmy Microsoft Entra, dlatego wszystkie identyfikatory logowania firmy Microsoft Entra są wyłączone dla serwera. Dodanie nowego administratora firmy Microsoft Entra z tej samej dzierżawy ponownie włącza identyfikatory logowania firmy Microsoft Entra.
Serwer elastyczny dopasuje tokeny dostępu do użytkowników serwera elastycznego usługi Azure Database for MySQL przy użyciu unikatowego identyfikatora użytkownika microsoft Entra zamiast nazwy użytkownika. Oznacza to, że jeśli użytkownik entra firmy Microsoft zostanie usunięty w identyfikatorze Entra firmy Microsoft, a nowy użytkownik zostanie utworzony o tej samej nazwie, serwer elastyczny uzna, że inny użytkownik. W związku z tym jeśli użytkownik zostanie usunięty z identyfikatora Entra firmy Microsoft, a następnie zostanie dodany nowy użytkownik o tej samej nazwie, nowy użytkownik nie będzie mógł nawiązać połączenia z istniejącym użytkownikiem.
Uwaga
Subskrypcje serwera elastycznego z włączonym uwierzytelnianiem firmy Microsoft Entra nie mogą być przenoszone do innej dzierżawy lub katalogu.