Integracja Microsoft Entra SSO z usługą AWS Single-Account Access
Z tego artykułu dowiesz się, jak zintegrować usługę AWS Single-Account Access z identyfikatorem Entra firmy Microsoft. Po zintegrowaniu dostępu do jednego konta AWS z usługą Microsoft Entra ID można:
- Kontroluj w usłudze Microsoft Entra ID, kto ma dostęp do pojedynczego konta platformy AWS.
- Zezwalaj swoim użytkownikom na automatyczne logowanie do usługi AWS Single-Account Access przy użyciu kont Microsoft Entra.
- Zarządzaj kontami w jednej centralnej lokalizacji.
Zrozumienie różnych aplikacji AWS w galerii aplikacji Microsoft Entra
Skorzystaj z poniższych informacji, aby podjąć decyzję między używaniem logowania jednokrotnego platformy AWS a aplikacjami usługi AWS Single-Account Access w galerii aplikacji Microsoft Entra.
AWS Single Sign-On
Logowanie jednokrotne platformy AWS zostało dodane do galerii aplikacji Microsoft Entra w lutym 2021 r. Ułatwia ona centralne zarządzanie dostępem do wielu kont platformy AWS i aplikacji platformy AWS przy użyciu logowania za pośrednictwem identyfikatora Entra firmy Microsoft. Federuj Microsoft Entra ID z usługą AWS SSO raz, a następnie użyj AWS SSO, aby zarządzać uprawnieniami na wszystkich swoich kontach AWS z jednego miejsca. Usługa AWS SSO automatycznie przydziela uprawnienia i utrzymuje je aktualnymi, gdy aktualizujesz zasady i przydziały dostępu. Użytkownicy końcowi mogą uwierzytelniać się przy użyciu swoich poświadczeń firmy Microsoft w celu uzyskania dostępu do konsoli usług AWS, interfejsu wiersza polecenia i zintegrowanych aplikacji usługi AWS SSO.
Dostęp do pojedynczego konta platformy AWS
Dostęp za pomocą pojedynczego konta platformy AWS jest używany przez klientów w ciągu ostatnich kilku lat i umożliwia sfederowanie identyfikatora Entra firmy Microsoft do pojedynczego konta platformy AWS i używanie identyfikatora Entra firmy Microsoft do zarządzania dostępem do ról IAM platformy AWS. Administratorzy usługi AWS IAM definiują role i zasady na każdym koncie platformy AWS. Dla każdego konta platformy AWS administratorzy usługi Microsoft Entra federują się z usługą AWS IAM, przypisują użytkowników lub grupy do konta i konfigurują identyfikator Entra firmy Microsoft w celu wysyłania asercji, które autoryzują dostęp do roli.
Funkcja | AWS Jednokrotne Logowanie | Dostęp do pojedynczego konta platformy AWS |
---|---|---|
Dostęp warunkowy | Obsługuje pojedyncze zasady dostępu warunkowego dla wszystkich kont platformy AWS. | Obsługuje pojedynczą zasadę dostępu warunkowego dla wszystkich kont lub zasady niestandardowe na konto. |
Dostęp do CLI | Wsparte | Obsługiwane |
Zarządzanie Tożsamościami Uprzywilejowanymi | Obsługiwane | Nieobsługiwany |
Scentralizowane zarządzanie kontami | Scentralizowane zarządzanie kontami na platformie AWS. | Scentralizować zarządzanie kontami w Microsoft Entra ID (prawdopodobnie będzie wymagać aplikacji Microsoft Entra dla przedsiębiorstw na konto). |
Certyfikat SAML | Pojedynczy certyfikat | Oddzielne certyfikaty na aplikację/konto |
Architektura dostępu jednokrotnego konta platformy AWS
Można skonfigurować wiele identyfikatorów dla wielu wystąpień. Na przykład:
https://signin.aws.amazon.com/saml#1
https://signin.aws.amazon.com/saml#2
Dzięki tym wartościom identyfikator Entra firmy Microsoft usuwa wartość #i wysyła poprawną wartość https://signin.aws.amazon.com/saml
jako adres URL odbiorców w tokenie SAML.
Zalecamy takie podejście z następujących powodów:
Każda aplikacja udostępnia unikatowy certyfikat X509. Każda instancja aplikacji AWS może mieć inną datę wygaśnięcia certyfikatu, którą można zarządzać oddzielnie na poszczególnych kontach AWS. Ogólna wymiana certyfikatów jest łatwiejsza w tym przypadku.
Możesz włączyć aprowizację użytkowników za pomocą aplikacji AWS w usłudze Microsoft Entra ID, a nasza usługa pobierze wszystkie role z tego konta AWS. Nie musisz ręcznie dodawać ani aktualizować ról platformy AWS w aplikacji.
Można przypisać właściciela aplikacji dla każdej aplikacji z osobna. Ta osoba może zarządzać aplikacją bezpośrednio w identyfikatorze Entra firmy Microsoft.
Uwaga
Upewnij się, że używasz tylko aplikacji galerii.
Wymagania wstępne
Do rozpoczęcia pracy potrzebne są następujące elementy:
- Subskrypcja firmy Microsoft Entra. Jeśli nie masz subskrypcji, możesz uzyskać bezpłatne konto.
- Subskrypcja z włączonym dostawcą tożsamości IAM AWS.
- Wraz z administratorem aplikacji w chmurze administrator aplikacji może również dodawać aplikacje lub zarządzać nimi w identyfikatorze Entra firmy Microsoft. Aby uzyskać więcej informacji, zobacz Role wbudowane platformy Azure.
Uwaga
Ról nie należy edytować ręcznie podczas ich importowania do Microsoft Entra ID.
Opis scenariusza
W tym artykule skonfigurujesz i przetestujesz SSO Microsoft Entra w środowisku testowym.
- Usługa AWS Single-Account Access obsługuje logowanie jednokrotne inicjowane przez SP i IDP.
Uwaga
Identyfikator tej aplikacji jest stałym ciągiem znaków, więc można skonfigurować tylko jedno wystąpienie w ramach jednej dzierżawy.
Dodawanie dostępu do pojedynczego konta platformy AWS z galerii
Aby skonfigurować integrację usługi AWS Single-Account Access z usługą Microsoft Entra ID, należy dodać AWS Single-Account Access z galerii do listy zarządzanych aplikacji SaaS.
- Zaloguj się do centrum administracyjnego firmy Microsoft Entra co najmniej jako administrator aplikacji w chmurze.
- Przejdź do Identity>Applications>Enterprise applications>New application.
- W sekcji Dodawanie z galerii wpisz AWS Single-Account Access w polu wyszukiwania.
- Wybierz pozycję Dostęp za pomocą pojedynczego konta platformy AWS z panelu wyników, a następnie dodaj aplikację. Poczekaj kilka sekund, aż aplikacja zostanie dodana do Twojej dzierżawy.
Alternatywnie można również użyć Kreatora konfiguracji aplikacji dla przedsiębiorstw. W tym kreatorze możesz dodać aplikację do swojego dzierżawcy, dodać użytkowników lub grupy do aplikacji, przypisać role, a także przejść przez konfigurację logowania jednokrotnego (SSO). Możesz dowiedzieć się więcej o kreatorach platformy Microsoft 365 tutaj.
Konfigurowanie i testowanie logowania jednokrotnego Microsoft Entra dla jednokrotnego dostępu do konta w usłudze AWS
Skonfiguruj i przetestuj Microsoft Entra SSO z dostępem do jednego konta platformy AWS przy użyciu użytkownika testowego B.Simon. Aby jednokrotne logowanie działało, należy ustanowić powiązanie między użytkownikiem usługi Microsoft Entra a powiązanym użytkownikiem w systemie AWS Single-Account Access.
Aby skonfigurować i przetestować Microsoft Entra SSO z AWS Single-Account Access, wykonaj następujące kroki:
-
Skonfiguruj SSO Microsoft Entra — aby umożliwić użytkownikom używanie tej funkcji.
- Utwórz testowego użytkownika Microsoft Entra — aby przetestować jednokrotne logowanie Microsoft Entra z B.Simonem.
- Przypisz użytkownika testowego Microsoft Entra — aby umożliwić B.Simon korzystanie z jednokrotnego logowania Microsoft Entra.
-
Skonfiguruj jednokrotne logowanie do konta AWS SSO - aby ustawić konfigurację logowania jednokrotnego po stronie aplikacji.
- Utwórz użytkownika testowego AWS Single-Account Access — aby mieć w AWS Single-Account Access odpowiednik użytkownika B.Simon, połączonego z reprezentacją użytkownika w Microsoft Entra.
- Jak skonfigurować aprowizowanie ról w usłudze AWS Single-Account Access
- Testowanie logowania jednokrotnego — aby sprawdzić, czy konfiguracja działa.
Konfigurowanie logowania jednokrotnego Microsoft Entra
Wykonaj następujące kroki, aby włączyć Microsoft Entra SSO.
Zaloguj się do centrum administracyjnego firmy Microsoft Entra co najmniej jako administrator aplikacji w chmurze.
Przejdź do Tożsamości>Aplikacje>Aplikacje przedsiębiorstwa>AWS Jednokontowa rejestracja>Jednokrotne logowanie.
Na stronie Wybieranie metody logowania jednokrotnego wybierz pozycję SAML.
Na stronie Konfigurowanie logowania jednokrotnego z SAML wybierz ikonę ołówka dla Podstawowa konfiguracja SAML, aby edytować ustawienia.
W sekcji Podstawowa konfiguracja protokołu SAML zaktualizuj zarówno identyfikator (identyfikator jednostki) jak i adres URL odpowiedzi przy użyciu tej samej wartości domyślnej: .
https://signin.aws.amazon.com/saml
Musisz wybrać pozycję Zapisz , aby zapisać zmiany konfiguracji.Aplikacja AWS oczekuje asercji SAML w określonym formacie, co wymaga dodania mapowań atrybutów niestandardowych do konfiguracji atrybutów tokenu SAML. Poniższy zrzut ekranu przedstawia listę atrybutów domyślnych.
Oprócz powyższych, aplikacja AWS oczekuje, że kilka atrybutów zostanie przekazanych z powrotem w odpowiedzi SAML, które są pokazane poniżej. Te atrybuty są już wypełnione, ale można je przejrzeć zgodnie z wymaganiami.
Nazwisko Atrybut źródłowy Przestrzeń nazw NazwaSesjiRoli user.userprincipalname (nazwa główna użytkownika) https://aws.amazon.com/SAML/Attributes
Rola user.assignedroles https://aws.amazon.com/SAML/Attributes
Czas trwania sesji użytkownik.czasTrwaniaSesji https://aws.amazon.com/SAML/Attributes
Uwaga
Platforma AWS oczekuje ról dla użytkowników przypisanych do aplikacji. Skonfiguruj te role w identyfikatorze Entra firmy Microsoft, aby umożliwić użytkownikom przypisanie odpowiednich ról. Aby dowiedzieć się, jak skonfigurować role w identyfikatorze Entra firmy Microsoft, zobacz tutaj
Na stronie Konfigurowanie logowania jednokrotnego przy użyciu protokołu SAML, w oknie dialogowym Certyfikat podpisujący SAML (krok 3) wybierz pozycję Dodaj certyfikat.
Wygeneruj nowy certyfikat podpisywania SAML, a następnie wybierz pozycję Nowy certyfikat. Wprowadź adres e-mail dla powiadomień o certyfikacie.
(Opcjonalnie) Możesz wybrać pozycję Ustaw certyfikat jako aktywny.
W sekcji Certyfikat podpisywania SAML znajdź plik XML metadanych federacji i wybierz pozycję Pobierz, aby pobrać certyfikat i zapisać go na komputerze.
W sekcji Konfigurowanie dostępu do pojedynczego konta platformy AWS skopiuj odpowiednie adresy URL zgodnie z wymaganiami.
Tworzenie i przypisywanie użytkownika testowego aplikacji Microsoft Entra
Postępuj zgodnie z wytycznymi w przewodniku szybkiego startu dotyczącym tworzenia i przypisywania konta użytkownika, aby utworzyć testowe konto użytkownika o nazwie B.Simon.
Konfiguracja jednokrotnego dostępu dla jednego konta AWS SSO
W innym oknie przeglądarki zaloguj się do firmowej witryny platformy AWS jako administrator.
Na stronie głównej platformy AWS wyszukaj IAM i wybierz ją.
Przejdź do zarządzania dostępem —>Dostawcy tożsamości i wybierz przycisk Dodaj dostawcę.
Na stronie Dodaj dostawcę tożsamości wykonaj następujące kroki:
a. W polu Typ dostawcy wybierz pozycję SAML.
b. W polu Nazwa dostawcy wpisz nazwę dostawcy (na przykład: WAAD).
c. Aby przekazać pobrany plik metadanych, wybierz pozycję Wybierz plik.
d. Wybierz pozycję Dodaj dostawcę.
Wybierz pozycję Role>Utwórz rolę.
Na stronie Create role (Tworzenie roli) wykonaj następujące kroki:
a. Wybierz Zaufany typ jednostki, wybierz Federacja SAML 2.0.
b. W obszarze dostawca oparty na protokole SAML 2.0 wybierz utworzonego wcześniej dostawcę SAML (na przykład: WAAD).
c. Wybierz pozycję Allow programmatic and AWS Management Console access (Zezwalaj na dostęp programowy i za pomocą konsoli AWS Management Console).
d. Wybierz Dalej.
W oknie dialogowym Zasady uprawnień załącz odpowiednie zasady dla Twojej organizacji. Następnie kliknij przycisk Dalej.
W oknie dialogowym Przegląd wykonaj następujące kroki:
a. W polu Nazwa roli wprowadź nazwę roli.
b. W polu Opis wprowadź opis roli.
c. Wybierz pozycję Utwórz rolę.
d. Utwórz dowolną liczbę ról i przypisz je do dostawcy tożsamości.
Użyj poświadczeń konta usługi AWS, aby pobrać role z konta AWS podczas aprowizacji użytkowników w Microsoft Entra. W tym celu otwórz stronę główną konsoli usług AWS.
W sekcji IAM wybierz Zasady i wybierz Utwórz zasadę.
Utwórz własne zasady, aby pobrać wszystkie role z kont platformy AWS.
a. W obszarze Tworzenie zasad wybierz kartę JSON .
b. W dokumencie zasad dodaj następujący kod JSON:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:ListRoles" ], "Resource": "*" } ] }
c. Wybierz Dalej: Tagi.
Można też dodać wymagane tagi w sekcji poniżej i wybrać opcję Dalej: Przejrzyj.
Zdefiniuj nowe zasady.
a. W polu Nazwa wprowadź AzureAD_SSOUserRole_Policy.
b. W polu Opis wprowadź Ta polityka umożliwi pobranie ról z kont AWS.
c. Wybierz Utwórz zasady.
Utwórz nowe konto użytkownika w usłudze AWS IAM.
a. W konsoli usługi AWS IAM wybierz pozycję Użytkownicy i wybierz pozycję Dodaj użytkowników.
b. W sekcji Określanie szczegółów użytkownika wprowadź nazwę użytkownika jako AzureADRoleManager i wybierz pozycję Dalej.
c. Utwórz nowe zasady dla tego użytkownika.
d. Wybierz pozycję Dołącz istniejące zasady bezpośrednio.
e. Wyszukaj nowo utworzone zasady w sekcji AzureAD_SSOUserRole_Policy filtru.
f. Wybierz zasady, a następnie wybierz pozycję Dalej.
Przejrzyj wybrane opcje i wybierz pozycję Utwórz użytkownika.
Uwaga: Upewnij się, że utworzysz i pobierzesz klucz dostępu zewnętrznego dla tego użytkownika. Ten klucz będzie używany w sekcji aprowizacji użytkowników usługi Microsoft Entra do pobierania ról z konsoli platformy AWS.
Aby pobrać poświadczenia użytkownika, włącz dostęp do konsoli na karcie Poświadczenia zabezpieczeń.
Wprowadź te poświadczenia w sekcji aprowizacji użytkowników w Microsoft Entra, aby pobrać uprawnienia z konsoli AWS.
Uwaga
Platforma AWS ma zestaw wymaganych uprawnień/limitów do skonfigurowania AWS logowania jednokrotnego. Aby dowiedzieć się więcej na temat limitów platformy AWS, zapoznaj się z tą stroną.
Jak skonfigurować aprowizowanie ról w usłudze AWS Single-Account Access
W portalu zarządzania firmy Microsoft Entra w aplikacji AWS przejdź do Provisioning.
Uwaga: Nazwa użytkownika i hasło zwrócone podczas włączania dostępu do konsoli nie są tym, czego potrzeba dla wartości client secret i Secret Token. Zamiast tego utwórz klucz dostępu innej firmy na potrzeby tego kroku.
Wprowadź odpowiednio klucz dostępu i klucz tajny w polach clientsecret i Secret Token .
a. Podaj klucz dostępu użytkownika usług AWS w polu clientsecret.
b. Podaj tajny klucz użytkownika AWS w polu Secret Token.
c. Wybierz pozycję Testuj połączenie.
d. Zapisz ustawienie, wybierając pozycję Zapisz.
W sekcji Ustawienia, w obszarze Stan aprowizacji, wybierz wartość Włącz. Następnie wybierz opcję Zapisz.
Uwaga
Usługa aprowizacji importuje role tylko z platformy AWS do identyfikatora Entra firmy Microsoft. Usługa nie udostępnia użytkowników i grup z identyfikatora Microsoft Entra ID do AWS.
Uwaga
Po zapisaniu poświadczeń aprowizacji należy poczekać na uruchomienie początkowego cyklu synchronizacji. Synchronizacja trwa zwykle około 40 minut. Można zobaczyć stan w dolnej części strony Konfigurowanie w obszarze Bieżący status.
Utwórz testowego użytkownika dostępu jednego konta usługi AWS
Celem tej sekcji jest utworzenie użytkownika o nazwie B.Simon w usłudze AWS Single-Account Access. Dostęp do pojedynczego konta platformy AWS nie wymaga utworzenia użytkownika w systemie na potrzeby logowania jednokrotnego, więc nie musisz wykonywać żadnych akcji w tym miejscu.
Testowanie logowania jednokrotnego
W tej sekcji przetestujesz konfigurację logowania jednokrotnego w Microsoft Entra, korzystając z następujących opcji.
Zainicjowane przez SP:
Wybierz pozycję Przetestuj tę aplikację. Spowoduje to przekierowanie do adresu URL logowania usługi AWS Single-Account Access, w którym można zainicjować przepływ logowania.
Przejdź bezpośrednio do adresu URL logowania jednokrotnego dostępu do pojedynczego konta usługi AWS i zainicjuj przepływ logowania stamtąd.
Inicjowane przez IDP
- Wybierz pozycję Przetestuj tę aplikacjęi powinno nastąpić automatyczne zalogowanie do usługi AWS Single-Account Access, dla której skonfigurowano logowanie jednokrotne.
Możesz również użyć Moje aplikacje firmy Microsoft, aby przetestować aplikację w dowolnym trybie. Po wybraniu kafelka AWS Single-Account Access w obszarze Moje aplikacje, jeśli jest skonfigurowany w trybie SP, nastąpi przekierowanie na stronę logowania do aplikacji, aby zainicjować proces logowania. Natomiast jeśli jest skonfigurowany w trybie IDP, powinno nastąpić automatyczne zalogowanie do usługi AWS Single-Account Access, dla której skonfigurowano logowanie jednokrotne (SSO). Aby uzyskać więcej informacji na temat Moje aplikacje, zobacz Wprowadzenie do Moje aplikacje.
Znane problemy
Integracji wdrażania dostępu do jednego konta w AWS nie można używać w regionach AWS China.
W sekcji Konfigurowanie podsekcja Mapowania pokazuje komunikat "Ładowanie...", ale nigdy nie wyświetla mapowania atrybutów. Jedynym obsługiwanym obecnie przepływem pracy aprowizacji jest importowanie ról z AWS do Entra ID firmy Microsoft do wyboru podczas przypisywania ról użytkownikom lub grupom. Mapowania atrybutów dla tego elementu są wstępnie określone i nie można ich konfigurować.
Sekcja Provisioning obsługuje wprowadzanie tylko jednego zestawu poświadczeń dla jednego dzierżawcy AWS naraz. Wszystkie zaimportowane role są zapisywane we właściwości
obiektu Microsoft Entra ID dla dzierżawy platformy AWS. Wielu tenantów platformy AWS (reprezentowanych przez
servicePrincipals
) można dodać do usługi Microsoft Entra ID w galerii na potrzeby zapewnienia zasobów. Istnieje jednak znany problem polegający na tym, że nie można automatycznie zapisywać wszystkich zaimportowanych ról z wielu instancji AWSservicePrincipals
używanych do aprowizacji do pojedynczegoservicePrincipal
używanego do SSO.Aby obejść ten problem, możesz użyć Microsoft Graph API do wyodrębnienia wszystkich danych zaimportowanych do każdej usługi AWS
servicePrincipal
, gdzie skonfigurowano aprowizację. Następnie można dodać te ciągi ról do AWSservicePrincipal
, gdzie skonfigurowano SSO.Role muszą spełniać następujące wymagania, aby kwalifikować się do zaimportowania z platformy AWS do identyfikatora Entra firmy Microsoft:
- Role muszą mieć dokładnie jednego dostawcę SAML zdefiniowanego w AWS
- Łączna długość ARN ("Amazon Resource Name") dla roli i ARN skojarzonego dostawcy SAML musi być mniejsza niż 240 znaków.
Dziennik zmian
- 12.01.2020 — Zwiększony limit długości roli z 119 znaków do 239 znaków.
Powiązana zawartość
Po skonfigurowaniu dostępu do pojedynczego konta platformy AWS można wymusić kontrolę sesji, która chroni eksfiltrację i infiltrację poufnych danych organizacji w czasie rzeczywistym. Kontrola sesji rozszerza dostęp warunkowy. Dowiedz się, jak wymusić kontrolę sesji za pomocą Microsoft Defender dla Cloud Apps.