Udostępnij za pośrednictwem


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.

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

Zrzut ekranu przedstawiający relację Microsoft Entra ID i 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.

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.

  1. Zaloguj się do centrum administracyjnego firmy Microsoft Entra co najmniej jako administrator aplikacji w chmurze.
  2. Przejdź do Identity>Applications>Enterprise applications>New application.
  3. W sekcji Dodawanie z galerii wpisz AWS Single-Account Access w polu wyszukiwania.
  4. 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:

  1. Skonfiguruj SSO Microsoft Entra — aby umożliwić użytkownikom używanie tej funkcji.
    1. Utwórz testowego użytkownika Microsoft Entra — aby przetestować jednokrotne logowanie Microsoft Entra z B.Simonem.
    2. Przypisz użytkownika testowego Microsoft Entra — aby umożliwić B.Simon korzystanie z jednokrotnego logowania Microsoft Entra.
  2. Skonfiguruj jednokrotne logowanie do konta AWS SSO - aby ustawić konfigurację logowania jednokrotnego po stronie aplikacji.
    1. 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.
    2. Jak skonfigurować aprowizowanie ról w usłudze AWS Single-Account Access
  3. 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.

  1. Zaloguj się do centrum administracyjnego firmy Microsoft Entra co najmniej jako administrator aplikacji w chmurze.

  2. Przejdź do Tożsamości>Aplikacje>Aplikacje przedsiębiorstwa>AWS Jednokontowa rejestracja>Jednokrotne logowanie.

  3. Na stronie Wybieranie metody logowania jednokrotnego wybierz pozycję SAML.

  4. Na stronie Konfigurowanie logowania jednokrotnego z SAML wybierz ikonę ołówka dla Podstawowa konfiguracja SAML, aby edytować ustawienia.

    Zrzut ekranu przedstawiający edytowanie podstawowej konfiguracji protokołu SAML.

  5. 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.

  6. 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.

    Zrzut ekranu przedstawiający atrybuty domyślne.

  7. 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

  8. Na stronie Konfigurowanie logowania jednokrotnego przy użyciu protokołu SAML, w oknie dialogowym Certyfikat podpisujący SAML (krok 3) wybierz pozycję Dodaj certyfikat.

    Zrzut ekranu przedstawiający tworzenie nowego certyfikatu SAML.

  9. Wygeneruj nowy certyfikat podpisywania SAML, a następnie wybierz pozycję Nowy certyfikat. Wprowadź adres e-mail dla powiadomień o certyfikacie.

    Zrzut ekranu przedstawiający nowy certyfikat SAML.

  10. (Opcjonalnie) Możesz wybrać pozycję Ustaw certyfikat jako aktywny.

  11. W sekcji Certyfikat podpisywania SAML znajdź plik XML metadanych federacji i wybierz pozycję Pobierz, aby pobrać certyfikat i zapisać go na komputerze.

  12. W sekcji Konfigurowanie dostępu do pojedynczego konta platformy AWS skopiuj odpowiednie adresy URL zgodnie z wymaganiami.

    Zrzut ekranu przedstawiający adresy URL konfiguracji kopiowania.

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

  1. W innym oknie przeglądarki zaloguj się do firmowej witryny platformy AWS jako administrator.

  2. Na stronie głównej platformy AWS wyszukaj IAM i wybierz ją.

    Zrzut ekranu przedstawiający stronę usług AWS, z wyróżnionym elementem IAM.

  3. Przejdź do zarządzania dostępem —>Dostawcy tożsamości i wybierz przycisk Dodaj dostawcę.

    Zrzut ekranu strony IAM z wyróżnionymi opcjami Dostawcy tożsamości i Utwórz dostawcę.

  4. Na stronie Dodaj dostawcę tożsamości wykonaj następujące kroki:

    Zrzut ekranu przedstawiający konfigurowanie dostawcy.

    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ę.

  5. Wybierz pozycję Role>Utwórz rolę.

    Zrzut ekranu przedstawiający stronę Role.

  6. Na stronie Create role (Tworzenie roli) wykonaj następujące kroki:

    Zrzut ekranu przedstawiający stronę Tworzenie roli.

    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.

  7. W oknie dialogowym Zasady uprawnień załącz odpowiednie zasady dla Twojej organizacji. Następnie kliknij przycisk Dalej.

    Zrzut ekranu przedstawiający okno dialogowe dołączania polityki uprawnień.

  8. W oknie dialogowym Przegląd wykonaj następujące kroki:

    Zrzut ekranu przedstawiający okno dialogowe Przegląd.

    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.

  9. 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.

  10. W sekcji IAM wybierz Zasady i wybierz Utwórz zasadę.

    Zrzut ekranu sekcji IAM z wyróżnionymi Zasadami.

  11. Utwórz własne zasady, aby pobrać wszystkie role z kont platformy AWS.

    Zrzut ekranu strony Tworzenie polityki, z wyróżnionym JSON.

    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.

  12. Można też dodać wymagane tagi w sekcji poniżej i wybrać opcję Dalej: Przejrzyj.

    Zrzut ekranu przedstawiający stronę tworzenia etykiety polityki.

  13. Zdefiniuj nowe zasady.

    Zrzut ekranu przedstawiający stronę tworzenia zasad z wyróżnionymi polami Nazwa i Opis.

    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.

  14. 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.

    Zrzut ekranu przedstawiający konsolę usługi AWS IAM z wyróżnieniem opcji 'Użytkownicy'.

    b. W sekcji Określanie szczegółów użytkownika wprowadź nazwę użytkownika jako AzureADRoleManager i wybierz pozycję Dalej.

    Zrzut ekranu przedstawiający stronę Dodaj użytkownika z wyróżnioną nazwą użytkownika i typem dostępu.

    c. Utwórz nowe zasady dla tego użytkownika.

    Zrzut ekranu przedstawia stronę Dodawanie użytkownika, na której można utworzyć zasady dla 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.

  15. 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.

  1. Aby pobrać poświadczenia użytkownika, włącz dostęp do konsoli na karcie Poświadczenia zabezpieczeń.

    Zrzut ekranu przedstawiający poświadczenia zabezpieczeń.

  2. Wprowadź te poświadczenia w sekcji aprowizacji użytkowników w Microsoft Entra, aby pobrać uprawnienia z konsoli AWS.

    Zrzut ekranu przedstawiający pobieranie poświadczeń użytkownika.

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 stroną.

Jak skonfigurować aprowizowanie ról w usłudze AWS Single-Account Access

  1. W portalu zarządzania firmy Microsoft Entra w aplikacji AWS przejdź do Provisioning.

    Zrzut ekranu aplikacji AWS z wyróżnioną pozycją 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.

  1. Wprowadź odpowiednio klucz dostępu i klucz tajny w polach clientsecret i Secret Token .

    Zrzut ekranu dialogu Poświadczenia Administratora.

    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.

  2. W sekcji Ustawienia, w obszarze Stan aprowizacji, wybierz wartość Włącz. Następnie wybierz opcję Zapisz.

    Zrzut ekranu przedstawiający sekcję Ustawienia z wyróżnioną pozycją Włączone.

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 AWS servicePrincipals używanych do aprowizacji do pojedynczego servicePrincipal 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 AWS servicePrincipal, 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.

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.