Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
При запуске гибкого сервера База данных Azure для PostgreSQL у вас есть два основных варианта сети: частный доступ (интеграция с виртуальной сетью) и общедоступный доступ (разрешенные IP-адреса).
С помощью общедоступного доступа вы обращаетесь к База данных Azure для PostgreSQL гибкому серверу через общедоступную конечную точку. По умолчанию брандмауэр блокирует весь доступ к серверу. Чтобы указать, какие IP-узлы могут получить доступ к серверу, создайте правила брандмауэра на уровне сервера. Правила брандмауэра указывают допустимые диапазоны общедоступных IP-адресов. Брандмауэр предоставляет доступ к серверу на основе исходного IP-адреса каждого запроса. При частном доступе общедоступная конечная точка недоступна, и доступ к База данных Azure для PostgreSQL гибкому серверу может получить только узлы, расположенные в той же сети.
Создайте правила брандмауэра с помощью портала Azure или с помощью команд Azure CLI. Вы должны быть владельцем подписки или участником подписки.
Правила брандмауэра на уровне сервера применяются ко всем базам данных на одном и том же База данных Azure для PostgreSQL гибком сервере. Правила не влияют на доступ к веб-сайту портала Azure.
На следующей схеме показано, как попытки подключения из Интернета и Azure должны пройти через брандмауэр, прежде чем они смогут получить доступ к базам данных Базы данных Azure для PostgreSQL:
Подключение из Интернета
Если IP-адрес источника запроса находится в одном из диапазонов, указанных в правилах брандмауэра уровня сервера, подключение предоставляется. В противном случае он отклоняется.
Например, если приложение подключается к драйверу подключения к базе данных Java (JDBC) для Базы данных Azure для PostgreSQL, может возникнуть эта ошибка, так как брандмауэр блокирует подключение:
- java.util.concurrent.ExecutionException: java.lang.RuntimeException:
- org.postgresql.util.PSQLException: FATAL: нет записи pg_hba.conf для узла "123.45.67.890", пользователя "adminuser", базы данных "postgresql", SSL
Замечание
Чтобы получить доступ к гибкому серверу База данных Azure для PostgreSQL с локального компьютера, убедитесь, что брандмауэр на сетевом и локальном компьютере разрешает исходящую связь через TCP-порт 5432.
Подключение из Azure
Найдите исходящий IP-адрес любого приложения или службы и явным образом разрешайте доступ к этим отдельным IP-адресам или диапазонам. Например, можно найти исходящий IP-адрес приложения Службы приложений Azure или использовать общедоступный IP-адрес, связанный с виртуальной машиной.
Если фиксированный исходящий IP-адрес недоступен для службы Azure, рассмотрите возможность включения подключений со всех IP-адресов для центров обработки данных Azure:
На портале Azure на панели Сеть установите флажок Разрешить общий доступ к этому серверу для всех служб Azure в Azure.
Нажмите кнопку "Сохранить".
Это важно
Параметр Разрешить публичный доступ к этому серверу из любой службы Azure в Azure настраивает брандмауэр так, чтобы разрешить все подключения из Azure, включая подключения из подписок других клиентов. При использовании этого параметра убедитесь, что разрешения входа и пользователей ограничивают доступ только авторизованным пользователям.
Программное управление правилами брандмауэра
Помимо использования портала Azure, правила брандмауэра можно управлять программными средствами с помощью Azure CLI.
В Azure CLI параметр правила брандмауэра, у которого начальный и конечный адреса равны 0.0.0.0, эквивалентен параметру Разрешить общий доступ из любой службы Azure в Azure к этому серверу в портале. Если правила брандмауэра отклоняют попытку подключения, приложение не достигает База данных Azure для PostgreSQL гибкого сервера.
Устранение неполадок брандмауэра
Рассмотрите следующие возможности, если доступ к гибкому серверу База данных Azure для PostgreSQL не ведет себя так, как вы ожидаете:
Изменения в списке разрешений пока не поддерживаются: изменения конфигурации брандмауэра База данных Azure для PostgreSQL гибкого сервера могут занять до пяти минут.
Вход не авторизован или неправильный пароль использовался: если вход не имеет разрешений на гибкий сервер База данных Azure для PostgreSQL или пароль неверный, подключение к серверу запрещено. Создание параметра брандмауэра дает клиентам возможность подключаться только к серверу. Каждый клиент по-прежнему должен предоставлять необходимые учетные данные безопасности.
Например, при сбое аутентификации клиента JDBC может отображаться следующая ошибка:
java.util.concurrent.ExecutionException: java.lang.RuntimeException: org.postgresql.util.PSQLException: НЕ удалось выполнить проверку подлинности паролей для пользователя "yourusername"
Брандмауэр не разрешает динамические IP-адреса: если у вас есть подключение к Интернету с динамическим IP-адресом, и у вас возникли проблемы с подключением через брандмауэр, попробуйте одно из следующих решений:
Попросите поставщика услуг Интернета (ISP) задать диапазон IP-адресов, назначенный клиентским компьютерам, которые обращаются к База данных Azure для PostgreSQL гибкому серверу. Затем добавьте этот диапазон IP-адресов в качестве правила брандмауэра.
Назначьте клиентским компьютерам статические IP-адреса, а затем добавьте эти статические IP-адреса в правило брандмауэра.
Правила брандмауэра недоступны для формата IPv6: правила брандмауэра должны быть в формате IPv4. При указании правил брандмауэра в формате IPv6 возникает ошибка проверки.