Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här artikeln beskrivs anslutnings- och nätverksbegrepp för Azure Database for PostgreSQL flexibel server.
När du skapar en Azure Database for PostgreSQL flexibel server måste du välja något av följande nätverksalternativ:
- Privat åtkomst (integrering av virtuellt nätverk)
- Offentlig åtkomst (tillåtna IP-adresser) och privat slutpunkt
Följande egenskaper gäller oavsett om du väljer att använda alternativet privat åtkomst eller offentlig åtkomst:
- Anslutningar från tillåtna IP-adresser måste autentiseras till den Azure Database for PostgreSQL flexibla servern med giltiga autentiseringsuppgifter.
- Anslutningskryptering tillämpas för nätverkstrafiken.
- Servern har ett fullständigt kvalificerat domännamn (FQDN). För egenskapen
hostnamei anslutningssträngar använder du FQDN i stället för en IP-adress. - Båda alternativen styr åtkomsten på servernivå, inte på databas- eller tabellnivå. Använd PostgreSQL:s rollegenskaper för att styra databas, tabell och annan objektåtkomst.
Anmärkning
Eftersom Azure Database for PostgreSQL-tjänsten är en hanterad databastjänst har användarna inte åtkomst till värd- eller operativsystem för att visa eller ändra konfigurationsfiler som pg_hba.conf. Tjänsten uppdaterar automatiskt innehållet i filerna baserat på nätverksinställningarna.
Använda offentliga åtkomstnätverk med Azure Database for PostgreSQL
När du väljer metoden för offentlig åtkomst får du åtkomst till din Azure Database for PostgreSQL flexibla servern via en offentlig slutpunkt via Internet. Den offentliga slutpunkten är en offentligt upplösbar DNS-adress. Frasen tillåtna IP-adresser refererar till ett intervall med IP-adresser som du väljer att ge behörighet att komma åt servern. Dessa behörigheter kallas brandväggsregler.
Välj det här nätverksalternativet om du vill ha följande funktioner:
- Anslut från Azure-resurser som inte stöder virtuella nätverk.
- Anslut från resurser utanför Azure som inte är anslutna via VPN eller Azure ExpressRoute.
- Se till att den Azure Database for PostgreSQL flexibla servern har en offentlig slutpunkt som är tillgänglig via Internet.
Egenskaperna för metoden för offentlig åtkomst är:
Endast de IP-adresser som du tillåter har behörighet att komma åt din Azure Database for PostgreSQL flexibla servern. Som standard tillåts inga IP-adresser. Du kan lägga till IP-adresser när servern skapas eller efteråt.
Din Azure Database for PostgreSQL flexibel server har ett DNS-namn som kan lösas upp offentligt.
Din Azure Database for PostgreSQL flexibla servern finns inte i något av dina Azure virtuella nätverk.
Nätverkstrafik till och från servern går inte över ett privat nätverk. Trafiken använder de allmänna Internetvägarna.
Brandväggsregler
Brandväggsregler på servernivå gäller för alla databaser på samma Azure Database for PostgreSQL flexibel server. Om käll-IP-adressen för begäran ligger inom något av de intervall som anges i brandväggsreglerna på servernivå beviljas anslutningen. Annars avvisas den. Om ditt program till exempel ansluter med JDBC-drivrutinen för PostgreSQL kan det här felet uppstå när du försöker ansluta och brandväggen blockerar anslutningen.
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
Anmärkning
Om du vill komma åt en Azure Database for PostgreSQL flexibel server från din lokala dator kontrollerar du att brandväggen i nätverket och den lokala datorn tillåter utgående kommunikation på TCP-port 5432.
Programmatiskt hanterade brandväggsregler
Förutom att använda Azure-portalen kan du hantera brandväggsregler programmatiskt med hjälp av Azure CLI. Mer information finns i Nätverk.
Tillåt alla Azure IP-adresser
Hitta den utgående IP-adressen för alla program eller tjänster och tillåt uttryckligen åtkomst till dessa enskilda IP-adresser eller intervall. Om en fast utgående IP-adress inte är tillgänglig för din Azure-tjänst kan du överväga att aktivera anslutningar från alla IP-adresser för Azure datacenter.
Om du vill aktivera den här inställningen från Azure Portal går du till fönstret Nätverk och markerar kryssrutan Tillåt offentlig åtkomst från alla Azure-tjänster i Azure till den här servern och väljer sedan Spara.
Viktigt!
Alternativet Tillåt offentlig åtkomst från Azure-tjänster och resurser i Azure konfigurerar brandväggen för att tillåta alla anslutningar från Azure, inklusive anslutningar från andra kunders prenumerationer. När du väljer det här alternativet kontrollerar du att dina inloggnings- och användarbehörigheter begränsar åtkomsten till endast behöriga användare.
Felsöka problem med offentlig åtkomst
Tänk på följande när åtkomsten till en Azure Database for PostgreSQL flexibel server inte fungerar som förväntat:
Ändringar i listan över tillåtna gäller inte ännu. Det kan ta upp till fem minuter innan ändringar i brandväggskonfigurationen för den Azure Database for PostgreSQL flexibla servern börjar gälla.
Autentiseringen misslyckades. Om en användare inte har behörighet på den Azure Database for PostgreSQL flexibla servern eller om lösenordet är felaktigt, nekas anslutningen till den Azure Database for PostgreSQL flexibla servern. Om du skapar en brandväggsinställning kan klienterna bara prova att ansluta till servern. Varje klient måste fortfarande ange nödvändiga säkerhetsautentiseringsuppgifter.
Dynamisk klient-IP-adress förhindrar åtkomst. Om du har en Internetanslutning med dynamisk IP-adressering och du har problem med att komma igenom brandväggen kan du prova någon av följande lösningar:
- Fråga internetleverantören (ISP) om det IP-adressintervall som tilldelats till dina klientdatorer som har åtkomst till den Azure Database for PostgreSQL flexibla servern. Lägg sedan till IP-adressintervallet som en brandväggsregel.
- Använd i stället statisk IP-adressering för dina klientdatorer. Lägg sedan till den statiska IP-adressen som en brandväggsregel.
Brandväggsregeln är inte tillgänglig för IPv6-format. Brandväggsreglerna måste anges i IPv4-format. Om du anger brandväggsregler i IPv6-format får du ett verifieringsfel.
Värdnamn
Oavsett vilket nätverksalternativ du väljer ska du alltid använda ett fullständigt domännamn (FQDN) som värdnamn när du ansluter till din Azure Database for PostgreSQL flexibla servern. Serverns IP-adress är inte garanterad att förbli statisk. Med hjälp av FQDN kan du undvika att göra ändringar i dina anslutningssträng.
Ett exempel som använder ett FQDN som värdnamn är hostname = servername.postgres.database.azure.com. Undvik om möjligt att använda hostname = 10.0.0.4 (en privat adress) eller hostname = 40.2.45.67 (en offentlig adress).
Utgående IP-adresser för brandväggskonfiguration
När din Azure Database for PostgreSQL flexibla servern behöver upprätta utgående anslutningar till externa tjänster (till exempel för logisk replikering, tillägg som ansluter till externa resurser eller externa datakällor) kan du behöva konfigurera brandväggsregler för dessa externa tjänster för att tillåta trafik från databasservern.
Hitta serverns IP-adress
Så här hittar du den IP-adress som för närvarande är tilldelad till din Azure Database for PostgreSQL flexibla server:
Använda DNS-matchning: Lös serverns FQDN (
servername.postgres.database.azure.com) för att hämta den aktuella IP-adressen. Använd verktyg somnslookupellerdig.nslookup servername.postgres.database.azure.comAnvänd Azure-portalen: Gå till din Azure Database for PostgreSQL flexibla server i Azure-portalen. Serverns offentliga IP-adress visas inte direkt, men du hittar den genom att matcha serverns fullständiga domännamn.
Använda Azure CLI: Använd Azure CLI för att hämta information om servern och lös sedan värdnamnet:
az postgres flexible-server show --resource-group myResourceGroup --name myServerName
Viktiga överväganden för utgående anslutningar
IP-adresser kan ändras: Den offentliga IP-adress som tilldelats din Azure Database for PostgreSQL flexibla servern är inte statisk och kan ändras under underhåll, uppdateringar eller andra driftshändelser. Använd alltid FQDN när det är möjligt och uppdatera regelbundet externa brandväggsregler om det behövs.
Azure DATACENTER-IP-intervall: Tillåt trafik från hela Azure datacenter-IP-intervall för den region där servern finns för mer förutsägbar brandväggskonfiguration. Azure publicerar IP-intervallen för varje region i nedladdningen av Azure IP-intervall och tjänsttaggar .
Tjänsttaggar: Om den externa tjänst som du ansluter till också finns i Azure kan du överväga att använda Azure-tjänsttaggar för mer dynamiska och underhållsbara brandväggsregler.
Alternativ för privat slutpunkt: Om du vill ha en stabilare anslutning och undvika offentliga IP-adresser bör du överväga att använda privata slutpunkter i stället för offentlig åtkomst.