Ana içeriğe geç

Taklit Etme İzinleri

Şimdilik, kimliğe bürünme erişimi yalnızca PostgreSQL, Redshift ve Snowflake için kullanılabilir.

Bu sayfa, Kimliğe Bürünme adlı Verileri görüntüle izin düzeyini kapsar.

Kimliğe bürünme erişimi, yöneticilerin Verileri görüntüle izinlerini veritabanınızdaki rollere "dış kaynak" olarak vermelerini sağlar. Yöneticiler, kullanıcı özelliklerini veritabanı tanımlı roller ve bunların ayrıcalıklarıyla ilişkilendirebilir. Bir kişi, Verileri görüntüle izni Kimliğe Bürünme olarak ayarlanmış bir gruptaysa, kişi, kullanıcı özelliği tarafından belirtilen role verilen ayrıcalıklara göre verileri görüntüleyebilir ve sorgulayabilir.

Bağlantı kimliğe bürünmesini ayarlama

**Kimliğe bürünmenin Redshift veritabanları için çalışması için, Patrona'nın Redshift veritabanınıza bağlanmak için kullandığı kullanıcı hesabının bir süper kullanıcı olması gerekir, çünkü Patrona'nın yalnızca bir veritabanı süper kullanıcısı tarafından çalıştırılabilen SET SESSION AUTHORIZATION komutunu çalıştırabilmesi gerekecektir.

Kimliğe bürünme erişiminin çalışması için, öncelikle Patrona'nın kimliğine bürüneceği rolleri veritabanınızda ayarlamanız ve ardından kişilerin verileri görüntülediği veya sorguladığı zaman bu rollere bürünmek için Patrona'yı yapılandırmanız gerekir.

Veritabanınızda roller ayarlayın

  1. Yeni bir rol oluşturun (Redshift'te bu yeni bir kullanıcı olacaktır).
  2. Bu role ayrıcalıklar verin.

Veritabanınızda tam olarak nasıl yeni bir rol oluşturacağınız ve bu role nasıl ayrıcalıklar vereceğiniz konusunda, veritabanınızın belgelerine başvurmanız gerekecektir. Ayrıca, başlamanıza yardımcı olabilecek kullanıcılar, roller ve ayrıcalıklar hakkında bazı belgelerimiz de var.

Patrona'nızda kimliğe bürünmeyi ayarlayın ve bir kullanıcı özelliği belirtin

  1. Yeni bir grup oluşturun veya mevcut bir grup seçin.

  2. Bu gruptaki kişilere bir kullanıcı özelliği atayın. Bu kullanıcı özelliğini, bu gruptaki kişileri veritabanınızda oluşturduğunuz bir rolle ilişkilendirmek için kullanacaksınız. Örneğin, satış ekibiyle ilgili tabloların bir alt kümesine erişimi olan veritabanınızda sales adlı bir rol oluşturduysanız, db_role (veya özniteliği ne adlandırmak isterseniz) adlı bir kullanıcı özelliği ekler ve kişinin db_role'üne sales değerini atarsınız. Özniteliğin değeri (bu durumda sales), veritabanınızdaki rolün adıyla eşleşmelidir. Yalnızca bazı veritabanları büyük/küçük harf duyarlılığını uygular, bu nedenle özniteliğin değeri ve veritabanının rolünün tam olarak eşleştiğinden emin olmak isteyebilirsiniz.

  3. Bu gruba kimliğe bürünme erişimini uygulayın. Komut paletini açmak için Cmd/Ctrl + K tuşlarına basın. İzinler araması yapın. Veya Yönetim ayarları > İzinler > Veri'ye gidin.

  4. Üzerinde izinleri ayarlamak istediğiniz veritabanını seçin.

  5. Oluşturduğunuz veritabanı rolüyle ilişkilendirmek istediğiniz grubu bulun. Bu grup için Verileri görüntüle ayarı altında Kimliğe Bürünme'yi seçin.

  6. Açılır menüden, veritabanını sorgularken grubun kullanmasını istediğiniz rolle eşleyen eklediğiniz kullanıcı özelliğini seçin.

  7. Değişikliklerinizi kaydedin.

Verilere kimliğe bürünme erişimi olan bir gruptaki kişiler mutlaka aynı ayrıcalıkları paylaşmaz

Patrona, her kişi için kullanıcı özelliğinde belirttiğiniz rolü kullanacaktır. Örneğin, kimliğe bürünme için db_role özniteliğini seçerseniz, bir kişinin db_rolesales, başka bir kişinin engineering veya veritabanınızda geçerli bir rolle eşleşen başka bir değer olabilir.

Satır düzeyinde SQL erişimi ayarlamak için kimliğe bürünmeyi kullanın

Kişilere yerel/SQL düzenleyicisine erişim vermek için kimliğe bürünmeyi kullanabilirsiniz, ancak erişimlerini belirli bir veritabanı rolüne göre verilere erişimle kısıtlayabilirsiniz. Ve sadece tablo düzeyinde erişim değil, satır düzeyinde erişim veya veritabanınızdaki bu rol için erişimi nasıl tanımlarsanız. Etkili bir şekilde, kişilerin bu verileri sorgulamak için SQL düzenleyicisini kullanmasına izin verirken, verilerinize veri sandbox benzeri erişim ayarlamak için kimliğe bürünmeyi kullanabilirsiniz. Aradaki fark, Patrona'da bir veri sandbox ayarlamak yerine, bu satır düzeyinde güvenliği veritabanınızdaki bir role verilen ayrıcalıklar aracılığıyla ayarlamanız gerekir.

Bunun yerine, bir gruba bu veritabanındaki bazı, ancak tüm şemalara veya tablolara SQL erişimi vermek istiyorsanız, veritabanınızda bu tabloların yalnızca bir alt kümesini veya hatta belirli satır düzeyinde erişimi içeren ek bir rol oluşturabilir ve ardından Patrona'nın kimliğe bürünme özelliğini kullanarak bir kullanıcı özelliğini bu rolle ilişkilendirebilirsiniz. Patrona'nın yapacağı şey, kullanıcı özelliğini almak ve Patrona sorguyu yürütmeden önce veritabanı için bir SET ROLE veya USE ROLE komutuna bir dize olarak geçirmektir.

Bağlantı kimliğe bürünmesi, Patrona yöneticileri grubundaki kişiler için geçerli değildir, çünkü daha izin verici ayrıcalıkları önceliklidir.

Bunun nasıl ayarlanacağı hakkında daha fazla bilgi için GUI ve SQL sorgularıyla satır düzeyinde izinler almak için Kimliğe Bürünmeyi Kullanın bölümüne bakın.

Patrona, kişilere tüm grupları arasında verilere en izin verici erişimi sağlar

Bu nedenle, bir kişi aynı veritabanı için farklı izinlere sahip iki gruptaysa:

  • Görebileceklerini sınırlayan kimliğe bürünülmüş erişime sahip Kırmızı grup.
  • Verileri görüntüle ayarı "Görüntüleyebilir" ve Sorgu oluşturma ayarı "Sorgu oluşturucu ve yerel" olarak ayarlanmış Mavi grup.

Kırmızı grubun daha izin verici erişimi, kimliğe bürünülmüş erişimi geçersiz kılacaktır.

Daha fazla okuma