Dynamodb nasıl kullanılır: Bölüm anahtarının birden fazla değer türü olduğunda LeadingKeys

Dec 25 2020

Dinamo Tablolarımda çok kiracılı uygulamamda bölüm anahtarı olarak tenant_id var, ancak bölüm anahtarımda tenant_id'ye ek olarak başka tür varlıklar da var.

Örneğin: (Bu küçük bir örnek, bu kalıbı baştan sona kullanıyoruz)

PK                                        SK                               Att
Customer-4312a674-54a                  user-abc                            672453782
user-abc                                   user-abc                            672453782

dynamodb:LeadingKeysBir kiracının verilerine başka bir kiracı tarafından asla erişilememesini sağlamak için kullanmak istiyorum . Bu durumda PKaşırı yüklendiğinde ve içinde başka varlıklar varken bunu nasıl yapabilirim ?

Yanıtlar

1 Maurice Dec 28 2020 at 17:41

Çok kiracılı bir sistemde benim tavsiyem, kiracıya ait tüm öğelerin bölüm anahtarına bir önek olarak kiracı kimliğini eklemek olacaktır . Bu şekilde dynamodb:LeadingKeys, erişim kontrolü için koşulu kullanabilirsiniz .

Kiracı kimliği yine de her sorgu için sorgu sırasında bilinmelidir, benim tahminim muhtemelen oturum bilgilerinde saklandığıdır. Bu, her Anahtara kiracı kimliğini ekleyebileceğiniz ve yine de bölüm anahtarı aşırı yüklemesi yapabileceğiniz anlamına gelir.