QGIS'ten PostGIS kimlik doğrulama işlemini basitleştirin


9

QGIS'te, aşağıda gösterildiği gibi bağlantıların her biri için kayıtlı oturum açma bilgileri (kimlik doğrulama kullanıcısı / pwd) olmayan çeşitli (~ 15) PostGIS veritabanlarından gelen verileri içeren bir projem var.

resim açıklamasını buraya girin

Şimdi başka bir kullanıcı projeyi açtığında, kullanılan EACH veritabanı için kimlik bilgilerini girmek zorundadır:

resim açıklamasını buraya girin

Kullanıcılarımın hiçbirinin yasal olarak kimlik bilgilerini 15 kez girmeyi kabul etmeyeceğinden kesinlikle korkuyorum (ancak potansiyel olarak 100'lü kullanıcısı olan bir kurumsal ortamda kabul, başarının anahtarıdır).

Benim için iki soru ortaya çıkıyor:

  • Genel proje değişkenine göre Kullanıcı Adını önermenin bir yolu var user_account_nameve
  • QGIS'e başka bir bağlantı için ilk db bağlantısı için girilen kimlik bilgilerini kullanmasını söylemenin bir yolu var mı?

'Kimlik Bilgilerini Girin' diyalogunu aşağıda önerildiği gibi değiştirmenin çok fazla olup olmayacağını tahmin edemiyorum, ancak bu mümkün mü?

resim açıklamasını buraya girin


diğer değişkenler aynı kalırken sadece "Bölge" değişiyor mu?
LaughU

evet, gerçekte sadece 'dbname' değişiyor. hepsi aynı sunucuda.
Jochen Schwarze

5
PostGIS uzamsal uzantıdır. Bir düzineden fazla PostgreSQL veritabanınız var. Eğer bir kludge cobble mümkün olsa da, eğer gerçekten sahip olması gereken bir büyük veritabanı. Üçten fazlasına bağlanmak sadece kötü uygulama / veritabanı tasarımıdır.
Vince

3
Çok heplful ... İngilizcemin sorumun uygulama / veritabanı tasarımı ile ilgili olmadığını açıkça belirtmek için yeterince iyi olmadığını düşünüyorum. Bu arada, her zaman PostGIS'in PostgreSQL'i ima ettiğini ve QGIS'de PostGIS bağlantıları kurduğumuzu düşündüm (yukarıdaki ekran görüntüsü). Bazı postgres insanları, farklı içerikleri farklı veritabanlarında dağıtmanın iyi bir uygulama olduğunu söylese de, lütfen üçten fazla veritabanına bağlanmanın kötü uygulama tasarımı olduğunu bildiğiniz yerden katılmama izin verin? Lütfen, ilgili literatür referansını veriniz! Ve neden üç ?!
Jochen Schwarze

1
Sizi literatüre yönlendiremem, ancak aynı veritabanında ayrı şemalar kullanmak iyi bir çözüm olabilir.
bugmenot123

Yanıtlar:


7

QGIS'in yerleşik bir Kimlik Doğrulama Sistemi vardır . Basitçe söylemek gerekirse, tüm kimlik bilgilerinizi içeren, tek bir qgis-auth.dbdosyada saklanan, ana şifreyi bilen birine gönderebileceğiniz korumalı bir veritabanınız var :

 .qgis klasörü

Yeni bir PostGIS bağlantısı oluşturduğunuzda, oturum açma adınızı / şifrenizi yazmak yerine bu bağlantıyı seçebilirsiniz qgis-auth.db(her oturum açma / şifre çiftinin kullanıcı dostu bir adı vardır).

Kimlik Doğrulama Sistemi ile QGIS'te PostGIS bağlantısı kurma

Örnek olarak, birçok katman içeren bir QGIS projem var. Her katman, uzak bir PostGIS veritabanına bağlantıdır. Her veritabanının kendi kullanıcısı vardır. Bu projeyi açtığımda, bir kez bir ana parola yazdırmam gerekiyor ve tüm katmanlar (db bağlantıları) çalışmaya başlıyor.

Dosyamı sağlayarak bu projeyi meslektaşıma gönderebilirim qgis-auth.db. Önceden bu dosyadan paylaşmak istemediğim bazı bilgileri silebilirim.

Meslektaşım koymak sonra qgis-auth.dbonun için .qgisklasöre, o projeyi açar ana şifre ve her şeyi eserler girer (daha önce kendi dosyasının yedek yapılamaz).

Oturum başına bir kez ana şifre girersiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.