Wprowadzenie do uprawnień DynamoDB

Wprowadzenie do uprawnień DynamoDB
Administratorzy baz danych muszą skonfigurować zasady kontroli dostępu i uprawnień w DynamoDB w celu bezproblemowych i bezpiecznych operacji. Uprawnienia DynamoDB pomagają kontrolować dostęp do działań i zasobów DynamoDB. W ten sposób możesz dołączyć uprawnienia do różnych tożsamości IAM, takich jak grupy, użytkownicy i role, aby wykonywać operacje w bazie danych.

Uprawnienia pozwalają na wybór i określanie działań, które użytkownik, rola lub grupa może wykonać na dowolnym określonym zasobie DynamoDB. Na przykład możesz zezwolić grupie użytkowników na odczytanie i zapisanie danych do danej tabeli, ale odmówić im zgody na usunięcie tabeli. Oczywiście możesz to osiągnąć, dołączając politykę IAM z odpowiednimi uprawnieniami do Twojej grupy.

Ten post na blogu wprowadza Cię w zasady IAM oparte na tożsamości DynamoDB. Wśród aspektów, których będziemy szukać, obejmują typy uprawnień DynamoDB i różne przykłady.

Rodzaje uprawnień DynamoDB

Poniżej znajdują się niektóre typy typów uprawnień DynamoDB, które można zdefiniować w polityce IAM: \

  • Uprawnienia do tabeli: Zasiłki te kontrolują dostęp do określonych tabel DynamoDB. Na przykład możesz zezwolić użytkownikowi na odczytanie i zapisanie danych do określonej tabeli, ale nie pozwolić im usunąć tabeli.
  • Globalne uprawnienia: Ta kategoria uprawnień kontroluje dostęp do wszystkich zasobów DynamoDB. Na przykład możesz pozwolić użytkownikowi na tworzenie i usunięcie dowolnej tabeli DynamoDB na Twoim koncie.
  • Uprawnienia do strumieni: Zasiłki te kontrolują dostęp do strumieni DynamoDB. Strumień to sekwencja zmian na poziomie pozycji w tabeli DynamoDB.
  • Uprawnienia do indeksu: Uprawnienia te kontrolują dostęp do globalnych wtórnych indeksów w DynamoDB.
  • Uprawnienia do tworzenia kopii zapasowych i przywracania: Uprawnienia do tworzenia kopii zapasowych i przywracania kontrolują dostęp do kopii zapasowych i przywracania DynamoDB.

Należy uważnie rozważyć, które uprawnienia należy przyznać każdemu użytkownikowi, grupowi lub rolę, aby upewnić się, że tylko upoważnieni użytkownicy mogą uzyskać dostęp do potrzebnych zasobów.

Przykłady uprawnień DynamoDB

Poniżej znajdują się pewne uprawnienia DynamoDB, które możesz rozważyć:

A. Tworzenie pozwolenia na tabelę

Ten przykład tworzy zasady IAM, które pozwala konkretnemu użytkownikowi odczytać i zapisywać dane do danej tabeli. Pierwszym krokiem jest wykonanie dokumentu zasad w pliku JSON, jak pokazano następująco:


„Wersja”: „2012-10-17”,
"Oświadczenie": [

„Efekt”: „Pozwól”,
"Działanie": [
„Dynamodb: Putitem”,
„Dynamodb: getItem”,
„DynamODB: aktualizacja”,
„DynamODB: DeleteItem”
],
„Zasób”: „ARN: AWS: DynamODB: EU-West-1: 123456789012: Tabela/My-Table-Nazwa”

]

Po zakończeniu tworzenia dokumentu zasad, kontynuuj utworzenie zasad i załącz użytkownika IAM, jak pokazano w następujący sposób:

AWS IAM Create-Policy-Policy-Nazwa DynamoDB-Table-Access-Policy-DoCument Plik: // Polityka.JSON
AWS IAM ATTUT-USER-Policy-User-Nazwa Myuser-Policy-Arn ARN: AWS: IAM :: 123456789012: Polityka/Dynamodb-Table-Access-Access

Ten kod tworzy zasady o nazwie „DynamoDB-Table-Access”, która umożliwia użytkownikowi IAM „AUSER” na odczytanie i zapisanie danych do tabeli DynamoDB: „My-Table.„Użytkownik nie może wykonywać innych działań w tabeli, takich jak usunięcie.

B. Tworzenie zasad DynamoDB Stream

Poniższy przykład tworzy zasady IAM, które pozwala użytkownikowi odczytać dane ze strumienia DynamoDB:


„Wersja”: „2012-10-17”,
"Oświadczenie": [

„Efekt”: „Pozwól”,
"Działanie": [
„DynamODB: opisano”,
„Dynamodb: GetRecords”,
„DynamODB: GetSharditerator”
],
„Zasób”: „ARN: AWS: DynamODB: EU-East-1: 123456789012: Table/My-Table-Nazwa/Stream/*”

]

Ta zasady pozwala użytkownikowi pobrać informacje o strumieniu, uzyskać rekordy ze strumienia i zdobyć iteratory odłamków dla strumienia. Nie pozwala użytkownikowi wykonywać innych działań w strumieniu lub tabeli.

Możesz dołączyć tę zasadę do użytkownika, grupy lub roli IAM za pomocą CLI AWS lub konsoli zarządzania AWS.

Wniosek

Uprawnienia DynamoDB mogą być bardzo szczegółowe, umożliwiając określenie działań, które są dozwolone lub odmowy dla każdego zasobu. Pomaga to zapewnić, że tylko upoważnieni użytkownicy mogą uzyskać dostęp i modyfikować zasoby DynamoDB.

Niezbędne jest staranne zarządzanie uprawnieniami DynamoDB, aby upewnić się, że tylko upoważnieni użytkownicy mogą uzyskać dostęp i modyfikować Twoje zasoby. Niewystarczające uprawnienia mogą prowadzić do naruszeń bezpieczeństwa i nieautoryzowanego dostępu do twoich danych.