Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede PostgreSQL için Azure Veritabanı esnek sunucu örneklerine yönelik bağlantı ve ağ kavramları açıklanmaktadır.
PostgreSQL için Azure Veritabanı esnek sunucu örneği oluşturduğunuzda, aşağıdaki ağ seçeneklerinden birini belirlemeniz gerekir:
- Özel erişim (sanal ağ tümleştirmesi)
- Genel erişim (izin verilen IP adresleri) ve özel uç nokta
Aşağıdaki özellikler, ister özel erişimi ister genel erişim seçeneğini kullanmayı tercih edin:
- İzin verilen IP adreslerinden gelen bağlantıların, geçerli kimlik bilgileriyle PostgreSQL için Azure Veritabanı esnek sunucu örneğinde kimlik doğrulaması yapması gerekir.
- Ağ trafiğiniz için bağlantı şifrelemesi uygulanır.
- Sunucunun tam etki alanı adı (FQDN) vardır.
hostnamebağlantı dizesi s özelliği için IP adresi yerine FQDN kullanmanızı öneririz. - Her iki seçenek de erişimi veritabanı veya tablo düzeyinde değil sunucu düzeyinde denetler. Veritabanı, tablo ve diğer nesne erişimini denetlemek için PostgreSQL'in rol özelliklerini kullanırsınız.
Not
PostgreSQL için Azure Veritabanı hizmeti yönetilen bir veritabanı hizmeti olduğundan, kullanıcılara gibi pg_hba.confyapılandırma dosyalarını görüntülemek veya değiştirmek için konak veya işletim sistemi erişimi sağlanmamıştır. Dosyaların içeriği ağ ayarlarına göre otomatik olarak güncelleştirilir.
PostgreSQL için Azure Veritabanı ile genel erişim ağı kullanma
Genel erişim yöntemini seçtiğinizde PostgreSQL için Azure Veritabanı esnek sunucu örneğiniz İnternet üzerinden genel uç nokta üzerinden erişilir. Genel uç nokta, genel olarak çözümlenebilen bir DNS adresidir. İzin verilen IP adresleri tümceciği, sunucunuza erişim izni vermeyi seçtiğiniz bir IP adresi aralığını ifade eder. Bu izinlere güvenlik duvarı kuralları denir.
Aşağıdaki özellikleri istiyorsanız bu ağ seçeneğini belirtin:
- Sanal ağları desteklemeyen Azure kaynaklarından bağlanın.
- VPN veya Azure ExpressRoute ile bağlı olmayan Azure dışındaki kaynaklardan bağlanın.
- PostgreSQL için Azure Veritabanı esnek sunucu örneğinde İnternet üzerinden erişilebilen bir genel uç nokta olduğundan emin olun.
Genel erişim yönteminin özellikleri şunlardır:
Yalnızca izin verdiğiniz IP adreslerinin PostgreSQL için Azure Veritabanı esnek sunucu örneğine erişme izni vardır. Varsayılan olarak, IP adreslerine izin verilmez. Sunucu oluşturma sırasında veya sonrasında IP adresleri ekleyebilirsiniz.
PostgreSQL için Azure Veritabanı esnek sunucu örneğinizin genel olarak çözümlenebilir bir DNS adı vardır.
PostgreSQL için Azure Veritabanı esnek sunucu örneğiniz Azure sanal ağlarınızdan birinde değil.
Sunucunuzdan gelen ve giden ağ trafiği özel bir ağ üzerinden gitmez. Trafik, genel İnternet yollarını kullanır.
Güvenlik duvarı kuralları
Sunucu düzeyinde güvenlik duvarı kuralları, PostgreSQL için Azure Veritabanı esnek sunucu örneğindeki tüm veritabanları için geçerlidir. İsteğin kaynak IP adresi sunucu düzeyinde güvenlik duvarı kurallarında belirtilen aralıklardan biri içindeyse, bağlantı verilir. Aksi takdirde reddedilir. Örneğin, uygulamanız PostgreSQL için JDBC sürücüsüne bağlanıyorsa, güvenlik duvarı bağlantıyı engellerken bağlanmayı denediğinizde bu hatayla karşılaşabilirsiniz.
java.util.concurrent.ExecutionException: java.lang.RuntimeException: org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host "123.45.67.890", user "adminuser", database "postgresql", SSL
Not
PostgreSQL için Azure Veritabanı esnek sunucu örneğine yerel bilgisayarınızdan erişmek için, ağınızdaki ve yerel bilgisayarınızdaki güvenlik duvarının 5432 numaralı TCP bağlantı noktasında giden iletişime izin verin.
Program aracılığıyla yönetilen güvenlik duvarı kuralları
Azure portalını kullanmaya ek olarak, Azure CLI kullanarak güvenlik duvarı kurallarını program aracılığıyla yönetebilirsiniz. Daha fazla bilgi için bkz. Ağ oluşturma.
Tüm Azure IP adreslerine izin ver
Herhangi bir uygulamanın veya hizmetin giden IP adresini bulmanızı ve bu tek tek IP adreslerine veya aralıklarına açıkça erişime izin vermenizi öneririz. Azure hizmetinizde sabit bir giden IP adresi yoksa, Azure veri merkezleri için tüm IP adreslerinden bağlantıları etkinleştirmeyi düşünebilirsiniz.
Bu ayarı Azure portalından etkinleştirmek için Ağ bölmesinde Azure'ın içindeki herhangi bir Azure hizmetinden bu sunucuya genel erişime izin ver onay kutusunu ve ardından Kaydet'i seçin.
Önemli
Azure'da Azure hizmetlerinden ve kaynaklarından genel erişime izin ver seçeneği, güvenlik duvarını diğer müşterilerin aboneliklerinden gelen bağlantılar da dahil olmak üzere Azure'dan gelen tüm bağlantılara izin verecek şekilde yapılandırmaktadır. Bu seçeneği belirlediğinizde, oturum açma ve kullanıcı izinlerinizin erişimi yalnızca yetkili kullanıcılarla sınırladığından emin olun.
Genel erişim sorunlarını giderme
PostgreSQL için Azure Veritabanı esnek sunucu örneğine erişim beklediğiniz gibi davranmadığında aşağıdaki noktaları göz önünde bulundurun:
İzin verilenler listesinde yapılan değişiklikler henüz geçerli değildir. PostgreSQL için Azure Veritabanı esnek sunucusunun güvenlik duvarı yapılandırmasındaki değişikliklerin etkili olması beş dakika kadar gecikebilir.
Kimlik doğrulaması başarısız oldu. Kullanıcının PostgreSQL için Azure Veritabanı esnek sunucu örneği üzerinde izinleri yoksa veya parola yanlışsa PostgreSQL için Azure Veritabanı esnek sunucu örneğine bağlantı reddedilir. Güvenlik duvarı ayarı oluşturmak yalnızca istemcilere sunucunuza bağlanmayı deneme fırsatı sağlar. Her istemci yine de gerekli güvenlik kimlik bilgilerini sağlamalıdır.
Dinamik istemci IP adresi erişimi engelliyor. Dinamik IP adresleme ile İnternet bağlantınız varsa ve güvenlik duvarından geçerken sorun yaşıyorsanız aşağıdaki çözümlerden birini deneyin:
- PostgreSQL için Azure Veritabanı esnek sunucu örneğine erişen istemci bilgisayarlarınıza atanan IP adresi aralığını internet servis sağlayıcınızdan (ISS) isteyin. Ardından IP adresi aralığını güvenlik duvarı kuralı olarak ekleyin.
- İstemci bilgisayarlarınız için bunun yerine statik IP adresi alma. Ardından statik IP adresini güvenlik duvarı kuralı olarak ekleyin.
IPv6 biçiminde güvenlik duvarı kuralı kullanılamaz. Güvenlik duvarı kuralları IPv4 biçiminde olmalıdır. Güvenlik duvarı kurallarını IPv6 biçiminde belirtirseniz doğrulama hatası alırsınız.
Konak adı
Seçtiğiniz ağ seçeneğinden bağımsız olarak PostgreSQL için Azure Veritabanı esnek sunucu örneğine bağlanırken ana bilgisayar adı olarak her zaman bir FQDN kullanmanızı öneririz. Sunucunun IP adresinin statik kalacağı garanti değildir. FQDN'yi kullanmak, bağlantı dizesi değişiklik yapmaktan kaçınmanıza yardımcı olur.
Ana bilgisayar adı olarak FQDN kullanan örnek: hostname = servername.postgres.database.azure.com. Mümkünse (özel adres) veya hostname = 10.0.0.4 (genel adres) kullanmaktan hostname = 40.2.45.67 kaçının.
Güvenlik duvarı yapılandırması için giden IP adresleri
PostgreSQL için Azure Veritabanı esnek sunucu örneğinizin dış hizmetlere (örneğin, mantıksal çoğaltma, dış kaynaklara bağlanan uzantılar veya dış veri kaynakları) giden bağlantılar kurması gerektiğinde, veritabanı sunucunuzdan gelen trafiğe izin vermek için bu dış hizmetlerde güvenlik duvarı kuralları yapılandırmanız gerekebilir.
Sunucunun IP adresini bulma
PostgreSQL için Azure Veritabanı esnek sunucu örneğine atanmış olan IP adresini bulmak için:
DNS çözümlemesini kullanma: Geçerli IP adresini almak için sunucunun FQDN'sini (
servername.postgres.database.azure.com) çözümleyebilirsiniz. veyanslookupgibidigaraçları kullanın:nslookup servername.postgres.database.azure.comAzure portalını kullanma: Azure portalında PostgreSQL için Azure Veritabanı esnek sunucu örneğine gidin. Sunucunun genel IP adresi doğrudan görüntülenmez, ancak sunucunun FQDN'sini çözümleyerek bunu bulabilirsiniz.
Azure CLI'yi kullanma: Sunucunuz hakkında bilgi almak ve ardından ana bilgisayar adını çözümlemek için Azure CLI'yi kullanabilirsiniz:
az postgres flexible-server show --resource-group myResourceGroup --name myServerName
Giden bağlantılar için önemli noktalar
IP adresleri değişebilir: PostgreSQL için Azure Veritabanı esnek sunucu örneğine atanan genel IP adresi statik değildir ve bakım, güncelleştirmeler veya diğer işlem olayları sırasında değişebilir. Mümkün olduğunda her zaman FQDN kullanın ve gerekirse dış güvenlik duvarı kurallarını düzenli olarak güncelleştirin.
Azure veri merkezi IP aralıkları: Daha öngörülebilir güvenlik duvarı yapılandırması için, sunucunuzun bulunduğu bölge için Azure veri merkezi IP aralığının tamamından gelen trafiğe izin vekleyebilirsiniz. Azure, Azure IP Aralıkları ve Hizmet Etiketleri indirmesindeki her bölge için IP aralıklarını yayımlar .
Hizmet Etiketleri: Bağlandığınız dış hizmet de Azure'da barındırılıyorsa, daha dinamik ve sürdürülebilir güvenlik duvarı kuralları için Azure Hizmet Etiketleri'ni kullanmayı göz önünde bulundurun.
Özel uç nokta alternatifi: Daha kararlı bağlantı için ve genel IP adreslerinden kaçınmak için genel erişim yerine özel uç noktaları kullanmayı göz önünde bulundurun.