Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel worden connectiviteits- en netwerkconcepten beschreven voor flexibele serverexemplaren van Azure Database for PostgreSQL.
Wanneer u een exemplaar van een flexibele Azure Database for PostgreSQL-server maakt, moet u een van de volgende netwerkopties kiezen:
- Privétoegang (integratie van virtueel netwerk)
- Openbare toegang (toegestane IP-adressen) en privé-eindpunt
De volgende kenmerken zijn van toepassing of u ervoor kiest om de persoonlijke toegang of de optie voor openbare toegang te gebruiken:
- Verbindingen van toegestane IP-adressen moeten zich authenticeren bij het exemplaar van de flexibele Azure Database voor PostgreSQL-server met geldige inloggegevens.
- Verbindingsversleuteling wordt afgedwongen voor uw netwerkverkeer.
- De server heeft een FQDN (Fully Qualified Domain Name). Voor de
hostnameeigenschap in verbindingsreeks s wordt u aangeraden de FQDN te gebruiken in plaats van een IP-adres. - Beide opties beheren de toegang op serverniveau, niet op database- of tabelniveau. U gebruikt de roleigenschappen van PostgreSQL om de toegang tot databases, tabellen en andere objecten te beheren.
Notitie
Omdat de Azure Database for PostgreSQL-service een beheerde databaseservice is, krijgen gebruikers geen host- of besturingssysteemtoegang om configuratiebestanden zoals pg_hba.confte bekijken of te wijzigen. De inhoud van de bestanden wordt automatisch bijgewerkt op basis van de netwerkinstellingen.
Openbare toegangsnetwerken gebruiken met Azure Database for PostgreSQL
Wanneer u de methode voor openbare toegang kiest, wordt uw flexibele Server-exemplaar van Azure Database for PostgreSQL geopend via een openbaar eindpunt via internet. Het openbare eindpunt is een openbaar omzetbaar DNS-adres. De woordgroep toegestane IP-adressen verwijst naar een bereik van IP-adressen die u toestemming geeft voor toegang tot uw server. Deze machtigingen worden firewallregels genoemd.
Kies deze netwerkoptie als u de volgende mogelijkheden wilt:
- Verbinding maken vanuit Azure-resources die geen ondersteuning bieden voor virtuele netwerken.
- Verbinding maken vanuit resources buiten Azure die niet zijn verbonden met VPN of Azure ExpressRoute.
- Zorg ervoor dat het exemplaar van de flexibele Azure Database for PostgreSQL-server een openbaar eindpunt heeft dat toegankelijk is via internet.
Kenmerken van de methode voor openbare toegang zijn:
Alleen de IP-adressen die u toestaat, hebben toegang tot uw exemplaar van flexibele Azure Database for PostgreSQL-server. Standaard zijn er geen IP-adressen toegestaan. U kunt IP-adressen toevoegen tijdens het maken van de server of later.
Uw Azure Database for PostgreSQL flexibele serverexemplaar heeft een openbaar oplosbare DNS-naam.
Uw Azure Database for PostgreSQL flexibele serverinstantie bevindt zich niet in een van uw Azure-virtuele netwerken.
Netwerkverkeer van en naar uw server gaat niet via een particulier netwerk. Het verkeer maakt gebruik van de algemene internetpaden.
Firewallregels
Firewallregels op serverniveau zijn van toepassing op alle databases op dezelfde Azure Database for PostgreSQL flexibele serverinstantie. Als het bron-IP-adres van de aanvraag binnen een van de bereiken valt die zijn opgegeven in de firewallregels op serverniveau, wordt de verbinding verleend. Anders wordt het geweigerd. Als uw toepassing bijvoorbeeld verbinding maakt met het JDBC-stuurprogramma voor PostgreSQL, kan deze fout optreden wanneer u verbinding probeert te maken wanneer de firewall de verbinding blokkeert.
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
Notitie
Zorg ervoor dat de firewall op uw netwerk en lokale computer uitgaande communicatie op TCP-poort 5432 toestaat om toegang te krijgen tot een exemplaar van een flexibele Azure Database for PostgreSQL-server vanaf uw lokale computer.
Programmatisch beheerde firewallregels
Naast het gebruik van Azure Portal kunt u firewallregels programmatisch beheren met behulp van de Azure CLI. Zie Netwerken voor meer informatie.
Alle Azure IP-adressen toestaan
U wordt aangeraden het uitgaande IP-adres van elke toepassing of service te vinden en expliciet toegang te verlenen tot deze afzonderlijke IP-adressen of bereiken. Als een vast uitgaand IP-adres niet beschikbaar is voor uw Azure-service, kunt u overwegen verbindingen in te schakelen vanaf alle IP-adressen voor Azure-datacenters.
Als u deze instelling vanuit Azure Portal wilt inschakelen, schakelt u in het deelvenster Netwerken het selectievakje Openbare toegang vanuit een Azure-service in Azure naar deze server toestaan in en selecteert u Opslaan.
Belangrijk
Met de optie Openbare toegang toestaan vanuit Azure-services en -resources binnen Azure configureert u de firewall om alle verbindingen vanuit Azure toe te staan, inclusief verbindingen van de abonnementen van andere klanten. Wanneer u deze optie selecteert, moet u ervoor zorgen dat uw aanmeldings- en gebruikersmachtigingen de toegang beperken tot alleen geautoriseerde gebruikers.
Problemen met openbare toegang oplossen
Houd rekening met de volgende punten wanneer toegang tot een flexibele Server-instantie van Azure Database for PostgreSQL niet werkt zoals verwacht:
Wijzigingen in de acceptatielijst zijn nog niet doorgevoerd. Het kan vijf minuten duren voordat wijzigingen in de firewallconfiguratie van de flexibele Azure Database for PostgreSQL-server van kracht worden.
Verificatie is mislukt. Als een gebruiker geen machtigingen heeft voor het exemplaar van de flexibele Azure Database for PostgreSQL-server of als het wachtwoord onjuist is, wordt de verbinding met het flexibele serverexemplaren van Azure Database for PostgreSQL geweigerd. Het maken van een firewallinstelling biedt clients alleen de mogelijkheid om verbinding te maken met uw server. Elke client moet nog steeds de benodigde beveiligingsreferenties opgeven.
Dynamisch CLIENT-IP-adres voorkomt toegang. Als u een internetverbinding hebt met dynamische IP-adressering en u problemen ondervindt bij het passeren van de firewall, kunt u een van de volgende oplossingen proberen:
- Vraag uw internetprovider (ISP) om het IP-adresbereik dat is toegewezen aan uw clientcomputers die toegang hebben tot het flexibele serverexemplaren van Azure Database for PostgreSQL. Voeg vervolgens het IP-adresbereik toe als een firewallregel.
- Haal in plaats daarvan statische IP-adressering op voor uw clientcomputers. Voeg vervolgens het statische IP-adres toe als firewallregel.
Firewallregel is niet beschikbaar voor IPv6-indeling. De firewallregels moeten de IPv4-indeling hebben. Als u firewallregels opgeeft in IPv6-indeling, krijgt u een validatiefout.
Hostnaam
Ongeacht de netwerkoptie die u kiest, raden we u aan altijd een FQDN als hostnaam te gebruiken wanneer u verbinding maakt met uw flexibele Server-exemplaar van Azure Database for PostgreSQL. Het IP-adres van de server blijft niet gegarandeerd statisch. Als u de FQDN gebruikt, kunt u voorkomen dat u wijzigingen aanbrengt in uw verbindingsreeks.
Een voorbeeld dat een FQDN als hostnaam gebruikt, is hostname = servername.postgres.database.azure.com. Vermijd waar mogelijk het gebruik hostname = 10.0.0.4 van (een privéadres) of hostname = 40.2.45.67 (een openbaar adres).
Uitgaande IP-adressen voor firewallconfiguratie
Wanneer uw flexibele Server-exemplaar van Azure Database for PostgreSQL uitgaande verbindingen met externe services moet maken (bijvoorbeeld voor logische replicatie, extensies die verbinding maken met externe resources of externe gegevensbronnen), moet u mogelijk firewallregels voor deze externe services configureren om verkeer vanaf uw databaseserver toe te staan.
Het IP-adres van de server zoeken
Om het IP-adres te vinden dat momenteel is toegewezen aan uw flexibele serverinstantie van Azure Database for PostgreSQL:
Dns-omzetting: u kunt de FQDN
servername.postgres.database.azure.comvan de server omzetten om het huidige IP-adres op te halen. Hulpprogramma's gebruiken zoalsnslookupofdig:nslookup servername.postgres.database.azure.comNavigeer in de Azure portal naar uw flexibele Azure Database for PostgreSQL-serverexemplaar in de Azure portal. Het openbare IP-adres van de server wordt niet rechtstreeks weergegeven, maar u kunt het vinden door de FQDN van de server op te lossen.
Met behulp van Azure CLI: U kunt Azure CLI gebruiken om informatie over uw server op te halen en vervolgens de hostnaam op te lossen:
az postgres flexible-server show --resource-group myResourceGroup --name myServerName
Belangrijke overwegingen voor uitgaande verbindingen
IP-adressen kunnen veranderen: het openbare IP-adres dat is toegewezen aan uw flexibele Server-exemplaar van Azure Database for PostgreSQL is niet statisch en kan worden gewijzigd tijdens onderhoud, updates of andere operationele gebeurtenissen. Gebruik indien mogelijk altijd de FQDN en werk indien nodig regelmatig externe firewallregels bij.
IP-adresbereiken van Azure-datacenter: Voor meer voorspelbare firewallconfiguratie kunt u verkeer van het hele IP-adresbereik van het Azure-datacenter toestaan voor de regio waar uw server zich bevindt. Azure publiceert de IP-bereiken voor elke regio in het downloadbestand Azure IP-bereiken en servicetags.
Servicetags: Als de externe service waarmee u verbinding maakt, ook wordt gehost in Azure, kunt u overwegen Om Azure-servicetags te gebruiken voor dynamischere en onderhoudbare firewallregels.
Alternatief voor privé-eindpunten: voor stabielere connectiviteit en om openbare IP-adressen te voorkomen, kunt u overwegen privé-eindpunten te gebruiken in plaats van openbare toegang.