Gelişmiş bağlantı seçenekleri

Bu makale, Visual Studio Code için PostgreSQL uzantısındaki gelişmiş bağlantı özelliklerini kapsar. Mevcut bir bağlantı dizesi yeniden kullanmanız, daha katı TLS doğrulaması için sertifika dosyaları sağlamanız veya SSH tüneliyle bir savunma konağı üzerinden bağlanmanız gerektiğinde bu seçenekleri kullanın.

Tip

Standart kimlik doğrulaması, SSL modu seçimi, sunucu grupları ve kaydedilmiş bağlantılar için bkz. Bağlantılar ve kimlik.

Bağlantı dizesi giriş modunu kullanın

Var olan bir bağlantı tanımını yapıştırmak için bağlantı iletişim kutusunda Bağlantı Dizesi sekmesini (Bağlantı yoluyla bağlan: altında) seçin. Uzantı dizeyi otomatik olarak ayrıştırarak bağlantı alanlarını doldurur.

Sayfada iki sütunlu bir düzen kullanılır:

  • Sol sütun: Dizeyi yapıştırdığınız Bağlantı Dizesi etiketli bir metin alanı. Metin alanının altında Lütfen parolayı bağlantı dizesine eklemeyin yazan bir ipucu bulunur.
  • Sağ sütun: ayıklandıkça ayrıştırılan Sunucu adı, Kullanıcı adı ve Veritabanı adı değerlerini gösteren, salt okunur Bağlantı Ayrıntıları paneli.

Yazarken veya yapıştırırken çözümleme anında yapılır. Ayrıştırıcı eksik bir sunucu veya kullanıcı değeri algılarsa, metin alanının üstünde bir doğrulama hatası görüntülenir.

Desteklenen biçimler

Uzantı dokuz bağlantı dizesi biçimi tanır:

Format Ön ek veya tetikleyici Example
PostgreSQL URI'sı postgres:// veya postgresql:// postgresql://user:password@host:5432/dbname?sslmode=require
JDBC jdbc:postgresql:// jdbc:postgresql://host:5432/dbname
Noktalı virgüllerle ayrılmış (key=value) ; içerir host=localhost;port=5432;dbname=mydb;user=postgres;password=secret
psql komut satırı psql psql -h host -p 5432 -U user -d dbname
Ortam değişkeni dışa aktarmaları export export PGHOST=localhost PGPORTve ardından , PGUSER, PGDATABASE,PGPASSWORD
Node.js new Client new Client({ host: "localhost", port: 5432, user: "postgres", database: "mydb" })
Python (psycopg2) psycopg2.connect psycopg2.connect(user="postgres", password="<your-password>", host="localhost", port=5432, database="mydb")
PHP pg_connect pg_connect("host=localhost port=5432 dbname=mydb user=postgres")
Ruby PG::Connection.new PG::Connection.new(host: "localhost", port: "5432", user: "postgres", database: "mydb")

Ayrıştırıcı tüm biçimlerden konak, kullanıcı, bağlantı noktası, veritabanı ve parola çıkarır. İletişim kutusunda zaten bir parola alanı doldurulmuşsa, ayrıştırıcı mevcut değeri korur.

Note

Ayrıştırmanın ardından, bağlantı dizelerinde bulunmayan ayarları (örneğin SSH tünelleri veya bağlantı başına YZ erişim modu; Visual Studio Code’da Copilot erişim modu, Cursor’da YZ erişim modu) yapılandırmak için Gelişmiş çekmecesini yine de açabilirsiniz.

Sertifika dosyalarını yapılandırma

Ortamınız karşılıklı TLS veya açık sertifika yetkilisi doğrulaması gerektirdiğinde Gelişmiş Bağlantı Ayarları çekmecesinin SSL akordeonu bölümündeki sertifika dosyası ayarlarını kullanın.

SSL kök sertifika modu

SSL kök sertifika modu açılan listesi, uzantının kök CA sertifikasını nasıl sağladığını denetler. Aşağıdaki değerlerden birini seçin:

Mode Davranış
Hiçbiri Kök sertifikası kullanılmaz. Uzantı, sunucu sertifika zincirini doğrulamaz.
Sistem Uzantı, işletim sisteminizin güvenilen sertifika depounu kullanır. Bu mod , Verify-Full SSL modunu gerektirir; uzantı bunu otomatik olarak zorlar.
Özel dosya SSL kök sertifika dosya adı etiketli bir metin alanı görüntülenir. PEM ile kodlanmış kök CA sertifika dosyasının yolunu girin.

Important

Sistem'i seçtiğinizde SSL modu Otomatik olarak Doğrula-Tam olarak ayarlanır. Sistem etkinken SSL modunu başka bir değerle değiştirirseniz bir doğrulama hatası görüntülenir: "Sistem sertifika deposu kullanılırken SSL moduVerify-Full gereklidir."

İstemci sertifikası alanları

SSL bölümünde bu alanlarda yollar sağlayarak karşılıklı TLS'yi yapılandırın:

Alan adı Property Açıklama
SSL sertifikası dosya adı sslcert İstemci sertifikası dosyasının yolu.
SSL anahtarı dosya adı sslkey İstemcinin özel anahtar dosyasının yolu.
SSL kök sertifika dosya adı sslrootcert Kök CA sertifikasının yolu (yalnızca SSL kök sertifika moduÖzel dosya olduğunda görünür).
SSL CRL dosya adı sslcrl Sertifika iptal listesi dosyasının yolu.
SSL sıkıştırmayı kullanma sslcompression SSL bağlantısında sıkıştırmayı etkinleştirir.

Tip

Verify-CA ve Verify-Full modları için, uzantının sunucu sertifikasını doğrulayabilmesi için kök sertifikayı her zaman yapılandırın. Bir dosya yolu belirtmeden işletim sisteminizin güvenilen CA deposuna güvenmek için Sistem modunu kullanın.

SSH tüneli üzerinden bağlanma

SSH tüneli, PostgreSQL bağlantısını şifrelenmiş bir SSH kanalı üzerinden yönlendirir. Veritabanına iş istasyonunuzdan doğrudan ulaşılamıyorsa bu yaklaşımı kullanın. Örneğin, sunucu savunma konağının arkasındaki özel bir ağda bulunduğunda.

Tüneli etkinleştirme

  1. Bağlantı iletişim kutusunu açın ve Gelişmiş'i seçerek Gelişmiş Bağlantı Ayarları çekmecesini açın.
  2. SSH Tüneli akordeon bölümünü genişletin.
  3. SSH Tünellemeyi Etkinleştir seçeneğini işaretleyin. SSH bağlantı alanları görüntülenir.

SSH tünel alanları

Alan adı Açıklama
konak SSH sunucusunun ana makine adı veya IP adresi (bastion host).
bağlantı noktası SSH sunucusu bağlantı noktası numarası (varsayılan: 22).
kullanıcı adı SSH sunucusuyla kimlik doğrulaması için kullanıcı adı.
Authentication SSH kimlik doğrulama yöntemi. Parola, Kimlik Dosyası veya SSH Aracısı'nı seçin.

Seçili kimlik doğrulama yöntemine bağlı olarak kalan alanlar değişir:

Kimlik doğrulama yöntemi Gösterilen ek alanlar
Parola password/passphrase: SSH parolasını girin. Kimlik bilgilerini kalıcı hale getirmek için Parola/Parolayı Kaydet onay kutusu.
Kimlik Dosyası Kimlik dosyası: SSH özel anahtarınızın tam yolunu girin (örneğin, ~/.ssh/id_ed25519). password/passphrase: Özel anahtar şifrelenmişse anahtar parolasını girin. Parolayı/Parolayı Kaydet onay kutusu.
SSH Aracısı Ek alan yok. Uzantı, kimlik doğrulamasını sisteminizin SSH aracısına (ssh-agentmacOS ve Linux üzerinde, Windows'de OpenSSH Kimlik Doğrulama Aracısı hizmetine) devreder.

Tünel nasıl çalışır?

SSH tüneli etkinleştirildiğinde uzantı önce SSH bağlantısını kurar, yerel bir bağlantı noktası ileri doğru oluşturur ve ardından bu iletim aracılığıyla PostgreSQL'e bağlanır. Bu yüzden:

  • Ana bağlantı alanlarındaki Sunucu adı, genellikle veya özel bir IP olan localhost veritabanı adresi olmalıdır.
  • Bağlantı noktası hedef konakta PostgreSQL bağlantı noktası olmalıdır (genellikle 5432).
  • SSH tüneli oluşturma işlemi bağlantı gecikme süresi ekler. Zaman aşımları oluşursa gelişmiş seçeneklerde Bağlan zaman aşımı değerini artırmayı göz önünde bulundurun.

Doğru gelişmiş seçeneği belirleyin

Scenario Önerilen özellik
Mevcut bir PostgreSQL URI'niz, uygulama kod parçacığınız veya psql komutunuz var Alanları otomatik olarak doldurmak için Bağlantı Dizesi sekmesini seçin.
Kuruluşunuz için özel CA dosyaları veya karşılıklı TLS gerekiyor Gelişmiş çekmecenin SSL bölümünde SSL sertifika alanlarını yapılandırın.
Sunucu doğrulaması için işletim sistemi sertifika deponuzu kullanmanız gerekir SSL kök sertifika modunuSistem ve SSL modu'nuDoğrula-Tam olarak ayarlayın.
Veritabanına yalnızca bir atlama kutusu veya savunma konağı üzerinden erişilebilir Gelişmiş paneldeki SSH Tüneli bölümünde SSH tünelini etkinleştirin.