2016-04-04 3 views
2

Sagen wir, ich verwende Shared Aws-Konto. Ich mag meine Setup-Tabellen mit dem Präfix "x-team", zum Beispiel:Ist es möglich, den DynamoDb-Berechtigungsbereich nur für Tabellen mit einem Präfix einzurichten?

  • x-team_customer_order
  • x-team_customer

Ein anderes Team hat auch andere Tabellen mit unterschiedlichem Präfix Namensschema. Um unseren Anwendungsbereich zu begrenzen, möchten wir verschiedene Anmeldeinformationen einrichten, die von jedem Team verwendet werden.

In diesem Dokument http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ddb-api-permissions-ref.html verwenden sie Wildcard *, aber es gibt keine Illustration, dass es möglich ist, Platzhalter für Tabelle Präfix-Name-Schema zu verwenden.

Antwort

0

Ja, es ist möglich.

würde diese Politik einem Benutzer erlauben, crud Tabellen, die mit ihrem Benutzernamen und einem Unterstrich benannt sind:

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
     { 
      "Sid": "AllAPIActionsOnUserSpecificTable", 
      "Effect": "Allow", 
      "Action": [ 
       "dynamodb:*" 
      ], 
      "Resource": "arn:aws:dynamodb:us-west-2:494057818753:table/${aws:username}_*" 
     }, 
     { 
      "Sid": "AdditionalPrivileges", 
      "Effect": "Allow", 
      "Action": [ 
       "dynamodb:ListTables", 
       "dynamodb:DescribeTable" 
      ], 
      "Resource": "*" 
     } 
    ] 
} 

am unteren Rand des this example in the AWS DynamoDB documentation Dies ist sehr kurz erwähnt.

Offensichtlich, wenn Sie Präfixe verwenden möchten, die anders als der Benutzername sind, können Sie es tun, müssen Sie nur separate Richtlinien für jedes Präfix machen, das Sie unterstützen möchten.