PostgreSQL'de izinleri ayarlama konusunda biraz kafam karıştı.
Bu rollere sahibim:
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------+-----------
admin | Superuser, Create role, Create DB, Replication | {}
meltemi | Create role, Create DB | {rails}
rails | Create DB, Cannot login | {}
myapp | | {rails}
ve veritabanları:
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
---------------------+--------+----------+-------------+-------------+-------------------
myapp_production | rails | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
...
kullanıcı kayıt ekleme ve silme veritabanını myappsorgulamakta sorun yok myapp_production. meltemiAynı veritabanını da sorgulayabilmek istiyorum . Yani, bir rol yarattı railsveritabanı sahibi ve hem yapılmış meltemive myappüyelerini rails. Ama yine de permission denied for relationhata alıyorum . Meltemişemayı görüntüleyebilir ancak DB'yi sorgulayamaz.
Ben sadece ( \dtkomut ile) myapptabloların sahibi olduğunu fark ettim :
List of relations
Schema | Name | Type | Owner
--------+-------------------+-------+-------
public | events | table | myapp
public | schema_migrations | table | myapp
...
public | users | table | myapp
...
Tablolar bir ORM (Rails ActiveRecord geçişleri) ile oluşturulmuştur.
PostgreSQL'de yetkilendirmenin çok farklı olduğunu biliyorum (MySQL ve kullandığım diğerlerinin aksine). Veritabanımı farklı kullanıcıların erişebilmesi için nasıl ayarlamalıyım? Bazıları CRUD yapabilmeli, bazıları ise sadece Okuyabilir vs.
Herhangi bir yardım için teşekkürler. Üzgünüm, bunun çok basit bir soru olduğunu biliyorum ama cevabı kendim bulamadım.
myappyerine kullanmak isteyebilirsinizrails? Çünkümyapptablolar sahibi (ben belirtti asla, göç olması gerekir). Ben adını Neyse, bu mantıklı sorta olurmyappüzeremyapp_groupve daha sonra yeni bir kullanıcı yapılmışmyappDB bağlanmak için kullanacağı app raylar. Makemyappve mevcutmeltemiait, iki üyemyapp_grouprolü. Ama bir sonraki geçişi çalıştırdığımda ne olacak. o mülkiyetinde olmayacakmyappyeniden oluşturma baştan sorunu?!?