Tillatelsene lar deg velge og spesifisere handlingene som en bruker, rolle eller gruppe kan utføre på hvilken som helst spesifisert dynamoDB -ressurs. For eksempel kan du la en gruppe brukere lese og skrive dataene til en gitt tabell, men nekte dem tillatelse til å slette tabellen. Selvfølgelig kan du oppnå dette ved å knytte en IAM -policy med passende tillatelser til gruppen din.
Dette blogginnlegget introduserer deg for den dynamoDB identitetsbaserte IAM-retningslinjene. Blant aspektene vi vil se etter inkluderer de typer dynamoDB -tillatelser og forskjellige eksempler.
Typer dynamoDB -tillatelser
Følgende er noen av typene DynamoDB -tillatelsestyper som du kan definere i en IAM -policy: \
Det er viktig å nøye vurdere hvilke tillatelser som skal gi hver bruker, gruppe eller rolle for å sikre at bare de autoriserte brukerne kan få tilgang til ressursene de trenger.
Eksempler på DynamoDB -tillatelser
Følgende er noen DynamoDB -tillatelser som du kan vurdere:
en. Opprette en bordstillatelse
Dette eksemplet oppretter en IAM -policy som lar en bestemt bruker lese og skrive dataene til en gitt tabell. Det første trinnet er å lage policy -dokumentet i en JSON -fil som vist i følgende:
"Versjon": "2012-10-17",
"Uttalelse": [
"Effekt": "Tillat",
"Handling": [
"Dynamodb: PutItem",
"Dynamodb: getItem",
"DynamoDB: UpdateItem",
"Dynamodb: DeleteItem"
],
"Ressurs": "ARN: AWS: Dynamodb: EU-West-1: 123456789012: Tabell/My-Table-Name"
]
Når du er ferdig med å lage policy -dokumentet, fortsett å lage policyen og knytte IAM -brukeren som illustrert i følgende:
AWS IAM Create-Policy-Policy-Name DynamoDB-Table-Access-Policy-Document File: // Policy.JSON
AWS iam vedlegg-bruker-policy-Brukernavn MyUser-Policy-Arn Arn: AWS: IAM :: 123456789012: Policy/Dynamodb-Table-Access
Denne koden oppretter en policy som heter “DynamoDB-Table-Access” som lar IAM-brukeren “Auser” lese og skrive dataene til DynamoDB-tabellen, “My-Table.”Brukeren kan ikke utføre andre handlinger på bordet som å slette den.
b. Opprette en DynamoDB -strømpolitikk
Følgende eksempel oppretter en IAM -policy som lar en bruker lese dataene fra en DynamoDB -strøm:
"Versjon": "2012-10-17",
"Uttalelse": [
"Effekt": "Tillat",
"Handling": [
"DynamoDB: Beskrivestrøm",
"Dynamodb: getRecords",
"Dynamodb: getSharditerator"
],
"Ressurs": "Arn: AWS: Dynamodb: EU-East-1: 123456789012: Tabell/My-Table-Name/Stream/*"
]
Denne policyen lar brukeren hente en informasjon om strømmen, få postene fra strømmen og få Shard Iterators for strømmen. Det tillater ikke brukeren å utføre andre handlinger på strømmen eller tabellen.
Du kan knytte denne policyen til en IAM -bruker, gruppe eller rolle ved hjelp av AWS CLI eller AWS Management Console.
Konklusjon
DynamoDB -tillatelsene kan være veldig granulære, slik at du kan spesifisere handlingene som er tillatt eller nektet for hver ressurs. Dette hjelper til med å sikre at bare de autoriserte brukerne kan få tilgang til og endre DynamoDB -ressursene dine.
Det er viktig å nøye administrere DynamoDB -tillatelsene dine for å sikre at bare de autoriserte brukerne kan få tilgang til og endre ressursene dine. Utilstrekkelig tillatelser kan føre til sikkerhetsbrudd og uautorisert tilgang til dataene dine.