Przegląd informacji „last accessed”, aby zidentyfikować nieużywane uprawnienia EC2, IAM i Lambda oraz zawęzić dostęp dla ról IAM

20 maja 2021

AWS Identity and Access Management (IAM) pomaga klientom analizować dostęp i osiągać minimalne uprawnienia. Pracując nad nowymi uprawnieniami dla swojego zespołu, możesz użyć generowania polityk IAM Access Analyzer, aby utworzyć polityki w oparciu o aktywność związaną z dostępem i ustawić szczegółowe uprawnienia. Aby przeanalizować i doprecyzować istniejące uprawnienia, możesz użyć informacji „last accessed”, do zidentyfikowania nieużywanych działań w politykach uprawnień IAM i ograniczenia dostępu. Kiedy uruchomiono funkcję „last accessed” w 2020 r., AWS zaczął od działań związanych z zarządzaniem S3, aby pomóc ograniczyć dostęp do krytycznych danych biznesowych. Teraz IAM rozszerza tę funkcję na akcje zarządzania Amazon Elastic Compute Cloud (Amazon EC2), AWS IAM i AWS Lambda. Ułatwia to analizowanie dostępu i redukcję uprawnień EC2, IAM i Lambda poprzez podanie najnowszej sygnatury czasowej, gdy użytkownik IAM lub rola uzyskał dostęp do akcji. Korzystając z informacji „last accessed”, możesz zidentyfikować nieużywane działania w swoich politykach uprawnień i zawęzić uprawnienia.

Kiedy systemy budowane są w AWS, rutynowo używane są Amazon EC2 oraz Lambda do udostępniania i zarządzania swoimi obciążeniami oraz AWS IAM do przyznawania dostępu. Administratorzy zarządzający uprawnieniami okresowo przeglądają informacje o dostępie, aby upewnić się, że przyznają tylko wymagane uprawnienia. Klienci AWS poinformowali, że korzystają z usługi IAM „last accessed”, aby usunąć dostęp do nieużywanych usług i potrzebują dodatkowych informacji, które pomogą im określić uprawnienia na poziomie akcji, które mogą usunąć, bez wpływu na zespoły.

Aby w tym pomóc, IAM zgłasza ostatni czas, kiedy użytkownik IAM lub rola użyła akcji zarządzania EC2, IAM, Lambda i S3, dzięki czemu można zidentyfikować nieużywane uprawnienia i łatwiej ograniczyć dostęp. Korzystając z ostatnio używanych informacji, można teraz sprawdzić, kiedy podmioty AWS uzyskały dostęp do określonych uprawnień IAM, i zawęzić dostęp tylko do kilku wymaganych uprawnień. Jest to również dostępne dla EC2 i Lambda, usług często używanych przez klientów do wykonywania zadań. Informacje o działaniu, do których ostatnio uzyskano dostęp, można przejrzeć w konsoli IAM lub programowo za pomocą interfejsu AWS Command Line Interface (AWS CLI) lub AWS SDK.

Używanie AWS Management Console, aby wyświetlić szczegóły akcji, do których ostatnio uzyskano dostęp

Na przykład, administrator systemu Nikki Wolf w Twojej firmie Example Corp jest odpowiedzialna za zarządzanie dostępem. Rutynowo tworzy role IAM, aby przyznać dostęp zespołom używającym AWS do tworzenia aplikacji. Co miesiąc przeprowadza przeglądy dostępu różnych członków zespołu w organizacji, dzięki czemu może identyfikować i usuwać nieużywane uprawnienia oraz utrzymywać zgodność. Aby to zrobić, Nikki najpierw sprawdza poufne uprawnienia IAM, aby upewnić się, że wszystkie dozwolone uprawnienia są wymagane i aktywnie wykorzystywane. Następnie przegląda ostatnio uzyskaną sygnaturę czasową dla akcji EC2 i Lambda, do których mają dostęp role, aby upewnić się, że mają tylko wymagane uprawnienia do dostępu i zarządzania swoimi obciążeniami. Następnie Nikki używa informacji „last accessed” do zidentyfikowania nieużywanych działań i ograniczenia dostępu do nich poprzez aktualizację zasad.

Aby przygotować się do kwartalnego przeglądu bezpieczeństwa, Nikki chce usunąć wszystkie nieużywane uprawnienia przyznane rolom i zaczyna od zespołu testującego.

Wyświetlanie informacji „last accesed”

  1. W konsoli IAM Console w panelu nawigacyjnym IAM, wybierz opcję Roles.
  2. Wybierz rolę do analizy (w tym przykładzie Nikki wybiera ExampleCorpQA), a następnie wybierz zakładkę Access Advisor, jak pokazano na rysunku 1. Zakładka ta wyświetla wszystkie usługi AWS, do których rola ma uprawnienia.

AWS_Identity_and_Access_Management_(IAM)

Rysunek 1: Zakładka Access Advisor - lista usług AWS, do których rola ma uprawnienia

 

  1. Z listy Service list wybierz usługę z EC2, IAM, Lambda lub S3. W tym przykładzie Nikki wybiera Amazon EC2.
  2. W obszarze Action można wyświetlić wszystkie akcje, do których rola ma uprawnienia, datę ostatniego dostępu do każdej akcji oraz używany region. Możesz sortować akcje, wybierając strzałkę obok opcji Last accessed .W tym przykładzie Nikki widzi, że rola korzystała z czynności z listy, takich jak DescribeInstances, jak pokazano na rysunku 2. Decyduje się zachować te uprawnienia.

AWS_Identity_and_Access_Management_(IAM)

Rysunek 2: Zakładka Access Advisor - lista akcji EC2, do których ostatnio uzyskano dostęp

 

  1. Aby zobaczyć wszystkie nieużywane akcje, wybierz Last accessed i wybierz Not accessed z menu rozwijanego. W tym przykładzie Nikki zauważa, że rola ExampleCorpQA ma nieużywane uprawnienia odczytu i zapisu EC2, jak pokazano na rysunku 3.

AWS_Identity_and_Access_Management_(IAM)

Rysunek 3: Zakładka Access Advisor - lista akcji EC2, do których ostatnio nie było dostępu

 

Ponieważ rola nie używa żadnych akcji zapisu EC2, takich jak CreateFleet, Nikki aktualizuje zasady, aby usunąć wszystkie nieużywane uprawnienia, dzięki czemu ExampleCorpQA działa tylko z wymaganymi uprawnieniami podczas uzyskiwania dostępu do EC2. Aby dowiedzieć się więcej o aktualizowaniu uprawnień, zobacz Modifying a role w AWS IAM User Guide.

7-go kwietnia AWS rozpoczął śledzenie „action last accessed„ dla EC2, IAM i Lambda. Od 19 kwietnia możesz przeglądać dane dostępu z 12 dni. Oznacza to, że każde użycie działań w ciągu ostatnich 12 dni zostanie wyświetlone z sygnaturą czasową. Ponieważ ten okres śledzenia nadal się wydłuża, możesz rozpocząć podejmowanie decyzji dotyczących uprawnień, które mają zastosowanie do przypadków użycia z dłuższymi wymaganiami okresowymi (na przykład, gdy dostępne jest 30 lub 90 dni).

W tym przykładzie Nikki zauważa, że wiele akcji pokazuje Not accessed in the tracking period w okresie śledzenia, co oznacza, że rola nie korzystała z akcji, odkąd AWS zaczął śledzić dostęp do usługi, akcji i regionu.

Używanie AWS CLI, aby wyświetlić szczegóły „action last accessed”

Możesz także użyć interfejsu AWS CLI, aby zidentyfikować nieużywane uprawnienia. Poniżej znajdują się interfejsy API uprawnień, które umożliwiają wyświetlanie szczegółów „action last accessed”:

  • generate-service-last-accessed-details: ten interfejs API generuje dane dotyczące usługi i „action last accessed” dla jednostki IAM (użytkownika, roli lub grupy). Musisz najpierw wywołać ten interfejs API, aby rozpocząć zadanie, które generuje dane „action last accessed” dla użytkownika lub roli. Ten interfejs API zwraca JobID, którego następnie użyjesz z get-service-last-accessed-details, aby określić stan ukończenia zadania.
  • get-service-last-accessed-details: Wywołaj ten interfejs API, aby pobrać dane usługi i „action last accessed” dla użytkownika lub roli na podstawie przekazanego JobID. Ten interfejs API jest podzielony na strony na poziomie usługi.

Podsumowanie

Korzystając z „last accessed”, możesz przeglądać dostęp dla akcji EC2, IAM, Lambda i S3, usuwać nieużywane akcje i zmniejszać uprawnienia użytkowników i ról IAM. Aby uzyskać więcej informacji, zobacz Udoskonalanie uprawnień w AWS przy użyciu ostatnio używanych informacji w AWS IAM User Guide.

 

źródło: AWS